Gast
#1016883
Moin! Ich suche die korrekte Notation im AVR-Studio für 1) den aktuellen Programzähler (Z80, 8086 hieß das mal $) und 2) lokale Labels. Gibt es das für die AVRs nicht mehr? Danke!
|
Anzeige
|
Syntax AVR-Assembler
Gast
#1016883
Moin! Ich suche die korrekte Notation im AVR-Studio für 1) den aktuellen Programzähler (Z80, 8086 hieß das mal $) und 2) lokale Labels. Gibt es das für die AVRs nicht mehr? Danke!
Gast
#1016902
Meinst Du Sowas? ldi wl,10+'0' ;Zehner-Stelle als ASCII, Zahl ist unter 0 dec wl ;Zehner runter und subi xl,-10 ;10 addieren bis positiv wird brlo pc-2 ;positiv? nein, 2 Zeilen hoch... rcall lcd_format ;ja, Zehner Stelle ausgeben... KH
Gast
#1016909
Ja, genau das! Vielen Dank! Kann es sein, daß man PC nicht groß schreiben darf?
Gast
#1016911
Das macht man mit label. ldi R16,8 loop: dec R16 brne loop die label sind global. Wie das mit einem label in einem Makro geht hab ich vergessen.
Gast
#1016931
Ich schreibe PC immer (na meistens) gross. Geht.
Gast
#1016964
>> Das macht man mit label
wenn man's anders kann, kann man's auch anders machen. Ab 10 Label
wird's nämlich lästig.
Hab's gefunden. Assembler-Option -c ist streng mit
Groß-Klein-Schreibung.
Allen vielen Dank!
Gast
#1016972
> Das macht man mit label.
Ich weiß...
Ich nutze diese Schreibweise ja auch nur in Macros und in includierbaren
Routinen (Programm-Module). Kleiner Vorteil dieser Schreibweise: Es gibt
keine Namenskonflikte, da man nicht versehentlich die gleichen
Bezeichner ein weiteres mal verwendet, was in Deinem Beispiel
vorprogrammiert ist (wer "loop" einmal als Label-Namen verwendet, der
macht das auch öfters). Beim modularen Programmieren kann das schnell in
die Hose gehen...
Übrigens könnte ich jetzt sagen, dass man Register nicht mit "r16"
anspricht, sondern mit "sprechenden Namen". Mir ist aber jetzt nicht
danach... ;-)
Es hat eben jeder seinen Stil, keiner (Stil) wird völlig falsch sein,
aber auch keiner völlig richtig. Es kommt halt immer auf die Situation
an, wobei meist mehrere Wege nach Rom führen.
KH
@KH in Macros verwendete Labels werden automatisch "umbenannt"
Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|