Il programma che segue pone sullo stack un numero, chiama un metodo che non restituisce nulla, e subito dopo la chiamata esegue un'addizione. Quale sarà il risultato? Perchè? Come modificare il programma per un risultato corretto? .constant OBJREF 0x40 .end-constant .main BIPUSH 0x3 // 3 -> stack LDC_W OBJREF INVOKEVIRTUAL nulla // chiamata al metodo IADD // preparazione per output in ashii OUT HALT .end-main .method nulla() .var x .end-var BIPUSH 0x30 IRETURN .end-method Importanza dell'istruzione LDC_W per chiamare un metodo. Cosa succede se non si utilizza? Il programma che segue carica sullo stack un valore, esegue una chiamata a metodo, che restituisce 0x30 e stampa il risultato. Provate ad eseguire il programma tenendo sotto controllo la memory. Cosa succede? Perchè? .constant OBJREF 0x40 .end-constant .main BIPUSH 0x3 INVOKEVIRTUAL nulla IADD // prepara lo stack per la stampa di un numero in formato ashii OUT HALT .end-main .method nulla() BIPUSH 0x30 IRETURN .end-method