Gast
#714723
Hallo zusammen, ich bin Anfänger bei IAR. Ich habe eine Frage. Was ist das Symbol $ in dem Befehl JMP $ Wieso ist das eine loop forever ???? Gruß led.
|
Anzeige
|
Befehl in IAR Entwicklungsumgebung
Gast
#714723
Hallo zusammen, ich bin Anfänger bei IAR. Ich habe eine Frage. Was ist das Symbol $ in dem Befehl JMP $ Wieso ist das eine loop forever ???? Gruß led.
Gast
#714755
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
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 schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|