Server read only due to being migrated.


Das Wiki ist im Nur-Lese-Modus, da es gerade migriert wird.

DEC $ll, X

Aus C64-Wiki
Zur Navigation springenZur Suche springen
Mnemonic: DEC $ll,X
Opcode: $D6
Operand(en): $ll
Anzahl der Bytes: 2
Befehlsgruppe: Arithmetik- und Logikbefehle
Adressierung: Zeropage X-indiziert
Beeinflusste Flags im Statusregister:
Negative-Flag
Zero-Flag
Taktzyklen: 6
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 + X* R lese von effektiver Adresse
5 Adresse + X* W schreibe Wert auf effektive
Adresse zurück und führe
Operation auf den Wert aus
6 Adresse + X* W schreibe neuen Wert auf effektive Adresse
Anmerkung: * das Highbyte der effektiven Adresse
ist immer Null, d.h. Seitenüberschreitungen
werden nicht beachtet


Der Assembler-Befehl DEC $ll,X vermindert den Inhalt der Zeropage-Adresse ($ll+X) um 1.
Bei einer Verminderung des Wertes 0 wird der neue Wert wieder 255 ($ff).

Funktionsprinzip

Fehler beim Erstellen des Vorschaubildes: Die Miniaturansicht konnte nicht am vorgesehenen Ort gespeichert werden

Bedeutung der Buchstaben im Befehl

DEC DECrement Memory
Vermindere Speicherzelle

Beispiel

Siehe auch Beispiele bei DEC $ll.

           ldx #$01     ; Index-Register initialisieren
           dec $01,x    ; Vermindert den Inhalt von $0002 um eins.

Vergleich des Beispielprogramms mit BASIC

Für BASIC V2:

10 X=1
20 POKE (1+X), PEEK(1+X) - 1 AND 255: REM AUF BYTEWERT MASKIEREN 0-255

Beispielprogramme