Server read only due to being migrated.
Das Wiki ist im Nur-Lese-Modus, da es gerade migriert wird.
STA $ll, X
Aus C64-Wiki
Zur Navigation springenZur Suche springenMnemonic: | STA $ll,X | |||
Opcode: | $95 | |||
Operand(en): | $ll | |||
Anzahl der Bytes: | 2 | |||
Befehlsgruppe: | Transferbefehl | |||
Adressierung: | Zeropage X-indiziert | |||
Beeinflusste Flags im Statusregister: | ||||
keine | ||||
Taktzyklen: | 4 | |||
1 | PC | R | Lese Befehl, inkrementiere PC | |
2 | PC | R | hole Adresse, inkrementiere PC | |
3 | Adresse | R | lese von Adresse und addiere Index-Register | |
4 | Adresse + I* | W | schreiben auf effektive Adresse | |
Anmerkung: | I bezeichnet das Index-Register (X oder Y) | |||
Anmerkung: | * das Highbyte der effektiven Adresse ist immer Null, d.h. Seitenüberschreitungen werden nicht beachtet |
Der Assembler-Befehl STA $ll,X speichert den Wert des Akkumulators in die Speicherstelle mit Zeropage-Adresse ($ll+X).
Der Akkumulator ist ein 8-Bit-Register mit einem Wert zwischen 0 und 255 ($ff).
Funktionsprinzip
Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden
Bedeutung der Buchstaben im Befehl
STA | STore Accumulator |
Speichere Akkumulator |
Beispiel
Einen 3 Byte umfassenden String-Descriptor einer Zeichenkette von $61-$62 auf den String-Descriptor-Stack (SD-Stack) für temporäre Zeichenketten ablegen, welcher sich in der Zeropage befindet:
ldx $16 ; Zeiger auf freies Element am lda $61 ; String-Länge sta $00,x ; auf SD-Stack lda $62 ; String-Adresse Low-Byte sta $01,x ; auf SD-Stack lda $63 ; String-Adresse High-Byte sta $02,x ; auf SD-Stack inx ; nächstes freie SD-Stack-Element inx inx stx $16 ; neuen SD-Stack-Zeiger speichern
Frei nach C64 BASIC V2 ROM: Save String Descriptor $B4D5.