ORA ($ll, X)
Aus C64-Wiki
Zur Navigation springenZur Suche springen
| Mnemonic: | ORA ($ll, X) | |||
| Opcode: | $01 | |||
| Operand(en): | $ll | |||
| Anzahl der Bytes: | 2 | |||
| Befehlsgruppe: | Arithmetik und Logikbefehl | |||
| Adressierung: | indirekt X-indiziert | |||
| Beeinflusste Flags im Statusregister: | ||||
| Negativ-Flag | ||||
| Zero-Flag | ||||
| Taktzyklen: | 6 | |||
| 1 | PC | R | Lese Opcode, inkrementiere PC | |
| 2 | PC | R | Lese Zeigeradresse, inkrementiere PC | |
| 3 | Pointer | R | Lese von der Adresse, addiere X dazu | |
| 4 | Pointer + X | R | lese effektive Adresse Low | |
| 5 | Pointer + X + 1 | R | lese effektive Adresse High | |
| 6 | Adresse | R | lese von effektiver Adresse | |
| Anmerkung: | Die effektive Adresse wird immer aus der Zeropage gelesen | |||
Der Assembler-Befehl ORA ($ll, X) führt eine bitweise ODER-Verknüpfung mit dem Akkumulator und dem Inhalt der Speicheradresse (LSB= $ll+X ; MSB= $ll+X+1) durch.
Das Ergebnis wird im Akkumulator gespeichert. Dieser Befehl eignet sich besonders zum Setzen von einzelnen Bits.
Wahrheitstabelle der ODER-Verknüpfung
Das Ergebnis ist bei der ODER-Verknüpfung gleich 1, wenn mindestens ein Bit gesetzt (1) ist.
| 0 | 0 | = | 0 |
| 0 | 1 | = | 1 |
| 1 | 0 | = | 1 |
| 1 | 1 | = | 1 |
Funktionsprinzip
Bedeutung der Buchstaben im Befehl
| ORA | OR with Accumulator |
| Bitweise Oder-Verknüpfung mit Akkumulator |
