ROL $hhll, X
Aus C64-Wiki
Zur Navigation springenZur Suche springen
Mnemonic: | ROL $hhll, X | |||
Opcode: | $3E | |||
Operand(en): | $ll $hh | |||
Anzahl der Bytes: | 3 | |||
Befehlsgruppe: | Rotations- und Schiebebefehl | |||
Adressierung: | absolut X-indiziert | |||
Beeinflusste Flags im Statusregister: | ||||
Carry-Flag | ||||
Negativ-Flag | ||||
Zero-Flag | ||||
Taktzyklen: | 7 | |||
1 | PC | R | Lese Befehl, inkrementiere PC | |
2 | PC | R | lese Adress-Lowbyte, inkrementiere PC | |
3 | PC | R | hole Highbyte der Adresse, addiere Indexregister X zum Adress-Lowbyte, inkrementiere PC | |
4 | Adresse + X | R* | lese von effektiver Adresse, korrigiere Highbyte der effektiven Adresse | |
5 | Adresse + X | R | lese erneut von effektiver Adresse | |
6 | Adresse + X | W | schreibe bisherigen Wert auf effektive Adresse zurück und führe Operation auf den Wert aus | |
7 | Adresse + X | W | schreibe neuen Wert auf effektive Adresse | |
Anmerkung: | * das Highbyte der effektiven Adresse könnte zu diesem Zeitpunkt ungültig sein |
Der Assembler-Befehl ROL $hhll, X rotiert die Bits der Speicheradresse ($hhll+X) um ein Bit nach links.
Das Carry-Flag wird in Bit0 geschoben und anschließend Bit7 in das Carry-Flag.
Funktionsprinzip
Bedeutung der Buchstaben im Befehl
ROL | ROtate Left |
Rotiere links um ein Bit |