Direktive | Parameter | Beschreibung |
---|---|---|
Listing | ||
.LIST | Schaltet die Ausgabe im Listing ein | |
.NOLIST | Schaltet die Ausgabe im Listing aus | |
Quelltext-Herkunft | ||
.INCLUDE | (Dateiname) | Assembliert den Code in der Zieldatei |
Ziel-Segmente | ||
.CSEG | Assembliert in das Code-Segment Adresszähler Program Counter PC | |
.ESEG | Assembliert in das EEPROM-Segment nur Label und .ORG-/.DB-/.DW- Direktiven sind zulässig, eigener EEPROM-Adresszähler | |
.DSEG | Assembliert in das SRAM-Segment nur Label, und .ORG-/.BYTE-/.WORD- Direktiven sind zulässig, eigener SRAM-Adresszähler | |
Adressenmanipulation | ||
.ORG | Adresse | Setzt den im Segment verwendeten Adresszähler vorwärts auf die angegebene Adresse |
.BYTE | N | Reserviert N Bytes und erhöht den Adresszähler um N |
.WORD | N | Reserviert N Worte und erhöht den Adresszähler um 2*N Bytes |
Tabellen anlegen | ||
.DB | b1,b2,..bn "(Text)" | Fügt die Bytes b1 bis bn bzw. die Ascii-Werte des Textes in das Code- oder EEPROM-Segment ein |
.DW | w1,w2,..wn | Fügt die 2-Byte-Werte w1 bis wn in das Code-Segment ein |
Symbole, Namen | ||
.DEF | Name = Rn | Ordnet dem Register Rn den Namen zu |
.EQU | Name = Wert | Setzt eine Konstante mit dem Namen auf den angegebenen Wert, keine nachträgliche Änderung zulässig |
.SET | Name = Wert | Setzt eine Konstante mit dem Namen auf den angegebenen Wert, nachträgliche Änderung(en) zulässig |
.UNDEF | Name | Beendet die Namenszuordnung |
Makros | ||
.MACRO | Name, Parameter | Beginnt ein Makro mit dem Namen und den Parametern |
.ENDMACRO .ENDM | Beendet das Makro | |
Typdefinition | ||
.DEVICE | "Typname" | Schaltet die Instruktionsprüfung für den angegebenen AVR-Typ ein |
Meldungen, Fehler | ||
.MESSAGE | "TEXT" | Gibt den angegebenen Text aus |
.ERROR | "TEXT" | Provoziert einen Fehler und gibt die angegebene Fehlermeldung aus |
Bedingte Assemblierung | ||
.EXIT | Beendet die Assemblierung | |
.IF | Bedingung | Assembliert wenn die Bedingung erfüllt ist |
.IFDEF | Symbol | Assembliert wenn das Symbol definiert ist |
.IFNDEF | Symbol | Assembliert wenn das Symbol nicht definiert ist |
.ELSE | Assembliert wenn die Bedingung in .IF nicht eingehalten ist oder das Symbol in .IFDEF nicht definiert ist | |
.ELIF | Bedingung | Assembliert, wenn die Bedingung in .IF nicht eingehalten und die Bedingung in .ELIF eingehalten ist |
.ENDIF | Beendet .IF, .IFDEF, .ELSE und .ELIF | |
gavrasm-Besonderheiten | ||
.DB | %YEAR%, %MONTH%, %DAY%, %HOUR%, %MINUTE%, %SOURCE% | Fügt aktuelle Datumsinformationen und den Dateinamen ein |
.IFDEVICE | "Devicename" | Bedingte Assemblierung wenn es sich um den angegebene AVR-Typ handelt |