Befehl in IAR Entwicklungsumgebung

Gast #714755
Lesenswert?

Ein kurzer Blick in den 'Assembler Programming Guide' sagt Dir, dass '$' 
als sogenannter 'location counter' definiert ist.
D.h. '$' enthält praktisch gesehen immer die Adresse der jeweiligen 
Codezeile, in der er selbst steht.
Ein 'JMP $' springt demnacht immer auf sich selbst -> Endlosschleife!
Gast #714762
Lesenswert?

Also vielleicht nochmal etwas klarer:

Der Compiler ersetzt '$' durch die aktuelle Adresse in der der Befehl 
(z.B. 'JMP $') steht.
Mann kann dadurch natürlich auch relative Sprünge nach vorne, bzw. 
zurück realisieren, wenn man '$ +/- x' verwendet. Allerdings sind 
hierfür Labels wohl angesagter, da man dann die Sprungweite nicht selbst 
berechnen muss!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren