[Assembly] Dubbio comandi: jmp-equ

meribesi
Salve,
ho appena cominciato a programmare con assembly, ma non avendo seguito il corso, molti comandi non mi sono chiari :roll:
In particolare non riesco a capire se il comando JMP salti semplicemente un'istruzione o faccia anche altro, perché osservando i "registers" non capisco proprio che passaggio faccia. Allo stesso modo ho dubbi sul comando EQU, che per quanto ho capito dà semplicemente valore ad un nome, nel caso del mio programma però, perché scrive $8008?

Allego la foto, ringrazio in anticipo :cry:


Risposte
apatriarca
Prima di tutto di quale linguaggio assembly stiamo parlando? Sarebbe inoltre meglio copiare il codice direttamente come testo invece di inserire una immagine.

La mia interpretazione del codice è che JMP SYSA faccia un salto all'istruzione memorizzata all'indirizzo $8008. Sono 8 byte dopo l'inizio (l'effettiva istruzione dipende da come le istruzioni sono convertite in linguaggio macchina in quella particolare ISA).

meribesi
Giusto :oops: Mi riferisco al linguaggio per simulare il 68K motorola..
Grazie per la risposta. Approfitto per un'altra domanda: sapresti dirmi la differenza tra il comando LOOP ed ALOOP, io intuitivamente avevo inteso ALOOP come l'inverso del primo, cioè non ripetere il comando, ma, provando a sostituire LOOP ad ALOOP, non ho visto cambiamenti nell'esecuzione del programma :?


Infine, se copio il codice direttamente non mi mantiene gli spazi tra i comandi, quando invio la domanda, non so come fare :cry:

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.