Hallo Comunity bei Üben mit dem Assembler auch durch Analogiebetrachtungen von bestehendem Code bin ich auf folgende Zeile gestossen: subi count0, byte1(-1) Über die Bedeutung der byte-Anweisung habe ich keine Erklärung gefunden. Kann mir jemand sagen was die Bedeutung und Funktion der Anweisung ist? Gruß Peter
Hallo Spess vieleicht bin ich zu blöd zum Lesen aber wenn ich auf den Link "AVR" gehe find ich "Assembler Hilfe-> User's Guide ->Expressions" nicht. Kannst du mir da vielleicht noch ein paar Hinweise geben wo ich da hin muss? Gruß Peter
Nachtrag: Nun gehört BYTE1 (eins) m.W.n. nicht zum alten AVR-Assembler, dürfte also eine Erweiterung irgendeines anderen Assemblers sein. Der Name lässt vermuten: Liefert das unterste Byte des Ausdruckes, also äquivalent zu (Ausdruck & 0xFF).
Hi >Nun gehört BYTE1 (eins) m.W.n. nicht zum alten AVR-Assembler,... Das gehört schon seit geraumer Zeit dazu. Der AVR-Assembler2 bietet zusätzlich noch: INT, FRAC, Q7, Q15, ABS(),DEFINED, STRLEN und eine Reihe C-Style Preprocessor Directiven. MfG Spess
Peter Jänsch schrieb: > subi count0, byte1(-1) > > Über die Bedeutung der byte-Anweisung habe ich keine Erklärung gefunden. schau mal weiter oben im Quelltext da müsste die Konstante byte1 mit
1 | .equ byte1 = |
definiert sein.
Hi >schau mal weiter oben im Quelltext da müsste die Konstante byte1 mit >.equ byte1 = >definiert sein. Nein. Byte1(...) ist äquivalent zu Low(...). Allerdings habe ich gerade gesehen, das das nicht in der Hilfe steht. Nur Byte2...4. Aber es funktioniert trotzdem. MfG Spess
>Was passiert, wenn man >subi count0, -1 >schreibt? >Oder >inc count0 Die Befehle sind auch in der Hilfe erklärt.
>Was passiert, wenn man
subi count0, -1
schreibt?
Ueberleg mal wie du zu einem Byte/Word eins dazuzaehlen wuerdest...
Der AVR hat keinen adi-Befehl, also wird "adi reg16,1" als "subi r16", -1 dargestellt. (Subtraktion einer neg Zahl ist Addition derselben.) Schönen Sonntag
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.