in gcc gibt es
1 | void (*lauf)( void ) = 0x00C0; |
2 | ..
|
3 | ...
|
4 | ...
|
5 | ...
|
6 | ...
|
7 | ...
|
8 | ...
|
9 | lauf(); |
wie müsste das gleiche in asm aussehen?
|
Forum: Mikrocontroller und Digitale Elektronik c ungleich asmin gcc gibt es
wie müsste das gleiche in asm aussehen? ne ne es muss auch anderst gehen ein sprung direkt zu einer adresse zu machhen. geht call 0x00C0 grinsender schrieb: > ne ne es muss auch anderst gehen ein sprung direkt zu einer adresse zu > machhen. > > geht > > call 0x00C0 Ist im Grunde ziemlich egal. Beides mündet in derselben Arbeit für den µC. Der einzige Unterschied: Kommt so ein Aufruf in einem Programm 300 mal vor, und ändert sich die Adresse, dann musst du mit deiner Lösung 300 mal ändern und beten, dass du nur ja keine übersiehst, während die Lösung mit einem Label nur 1 Änderung bedeutet und den Rest macht der Assembler. Und im Zweifellsfall lass ich lieber den Assembler für mich arbeiten :-) WEnn wir mal den Aspekt der Dokumentation ausser acht lassen. call 0x00C0 sagt mir halt so gar nicht, was da ausgeführt wird. call OutputChar hingegen ist schon ein bischen auskunftsfreudiger. Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.
|
|