Z80-CPU - Alphanumerische Zusammenstellung der Befehlsliste |
![]() |
![]() |
Letztmalig dran rumgefummelt: 02.03.07 06:40:57 |
![]() |
Und hier nun die
knallharten Programmierwerkzeuge, ohne die kein sinnvolles Programmieren
möglich ist. Für alle Befehle ist jeweils der Link auf die
Funktionsbeschreibung sowie die Flag-Wirkung gesetzt. Ich hab' mir erlaubt, noch 'ne kleine Gliederung in die Unmenge von Befehlen einzubauen. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
0. Allgemeine FLAG-Wirkung 1. ADD bzw. ADC - Additionsbefehle 2. AND - Logische UND-Befehle 3. BIT - Bittestbefehle 4. CALL - Unterprogrammaufruf-Befehle 5. CCF - Komplementärbefehl für CARRY-Flag 6. CMP- bzw. CPI und CPD - Compare- oder Vergleichsbefehle 7. DAA - Komplementbefehl und Dezimalkorrektur 8. DEC - Decrementbefehle 9. DI - Interruptsperre 10. DJNZ - relativer Sprung, wenn Register B nicht 0 11. EI - Interruptsperr-Befehl 12. EXX - Exchange-Befehle 13. HALT-Befehl 14. IMO - Interrupt-Mode setzen 15. IN - Input-Befehle 16. INC - Incrementbefehle 17. INI bzw. IND - Blocklese-Befehle 18. JMP - Jump-Befehle 19. LD - Load - Ladebefehle 20. LDI bzw. LDD - Blocktransferbefehle 21. NEG - Negations-Befehl 22. NOP - No Operation-Befehl 23. OR-Befehle 24. OUTI bzw. OUTD - Block In/Out-Befehle 25. OUT - Out-Befehle 26. POP- und PUSH-Befehle 27. RES Reset-Befehle 28. RET - Return-Befehle 29. RR bzw. RL - Rotationsbefehle 30. RST Kurzrufadresse- RESTART-Befehle 31. SBC - Subtraktions-Befehle 32. SET - Bit-Setzbefehle 33. SLA bzw. SRA-Befehle 34. SUB-Befehle 35. XOR - Logisches XOR-Befehle |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
|
Quelle: LC-80 Handbuch S. 166
0. Allgemeine FLAG-Wirkung |
![]() |
![]() |
![]() |
1. Ladebefehle bis
16-Bit Arithmetik
2. Verschiebebefehle
bis Eingabe/Ausgabe
1. Arithmetikbefehle |
![]() |
![]() |
![]() |
![]() |
Hierbei werden Bitmuster verschoben, woraus sich interessante mathematische Effekte ergeben. Die Befehle unterscheiden sich hauptsächlich in der Realisierung des einfließenden bzw. herausfallenden Bits. Das CARRY-Bit ist bei fast allen Operationen einbezogen. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
8E | ADC A,(HL) | Addition Carry A,(HL) | aktueller Inhalt der durch Register HL adressierten Speicherzelle sowie des CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
DD 8E d | ADC A,(IX+d) | Addition Carry A,(IX+d) | aktueller Inhalt der durch Register IX+Verschiebung adressierten Speicherzelle sowie des CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
FD 8E d | ADC A,(IY+d) | Addition Carry A,(IY+d) | aktueller Inhalt der durch Register IY+Verschiebung adressierten Speicherzelle sowie des CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
8F | ADC A | Addition Carry A,A | aktueller Inhalt des Registers A sowie des CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
88 | ADC B | Addition Carry A,B | aktueller Inhalt des Registers B sowie des CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
89 | ADC C | Addition Carry A,C | aktueller Inhalt des Registers C sowie des CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
8A | ADC D | Addition Carry A,D | aktueller Inhalt des Registers D sowie des CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
8B | ADC E | Addition Carry A,E | aktueller Inhalt des Registers E sowie des CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
8C | ADC H | Addition Carry A,H | aktueller Inhalt des Registers H sowie des CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
8D | ADC L | Addition Carry A,L | aktueller Inhalt des Registers L sowie des CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
CE n | ADC n | Addition Carry A,n | direkter Wert n sowie das CARRY-Flags werden zum aktuellen Inhalt des Registers A addiert - das Ergebnis steht im Register A (Akkumulator) | Flags werden entsprechend gestellt |
ED 4A | ADC HL,BC | Addition Carry HL,BC | aktueller Inhalt des Registerpaares BC sowie des CARRY-Flags werden zum aktuellen Inhalt des Registerpaares HL addiert - das Ergebnis steht im Registerpaar HL | Flags werden entsprechend gestellt |
ED 5A | ADC HL,DE | Addition Carry HL,DE | aktueller Inhalt des Registerpaares DE sowie des CARRY-Flags werden zum aktuellen Inhalt des Registerpaares HL addiert - das Ergebnis steht im Registerpaar HL | Flags werden entsprechend gestellt |
ED 6A | ADC HL,HL | Addition Carry HL,HL | aktueller Inhalt des Registerpaares HL sowie des CARRY-Flags werden zum aktuellen Inhalt des Registerpaares HL addiert - das Ergebnis steht im Registerpaar HL | Flags werden entsprechend gestellt |
ED 7A | ADC HL,SP | Addition Carry HL,SP | aktueller Inhalt des Registerpaares SP sowie des CARRY-Flags werden zum aktuellen Inhalt des Registerpaares HL addiert - das Ergebnis steht im Registerpaar HL | Flags werden entsprechend gestellt |
86 | ADD (HL) | Addition A,(HL) | aktueller Inhalt des durch Registerpaar HL adressierten Speicherplatzes wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
DD 86 d | ADD (IX+d) | Addition A,(IX+d) | aktueller Inhalt des durch Register IX + Verschiebung adressierten Speicherplatzes wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
FD 86 d | ADD (IY+d) | Addition A,(IY+d) | aktueller Inhalt des durch Register IY + Verschiebung adressierten Speicherplatzes wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
87 | ADD A | Addition A,A | aktueller Inhalt des Register A wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
80 | ADD B | Addition A,B | aktueller Inhalt des Register B wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
81 | ADD C | Addition A,C | aktueller Inhalt des Register C wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
82 | ADD D | Addition A,D | aktueller Inhalt des Register C wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
83 | ADD E | Addition A,E | aktueller Inhalt des Register E wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
84 | ADD H | Addition A,H | aktueller Inhalt des Register H wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
85 | ADD L | Addition A,L | aktueller Inhalt des Register L wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
C6 n | ADD n | Addition A,n | direkter Wert n wird zum aktuellen Inhalt des Registers A addiert - Ergebnis steht in A | Flags werden entsprechend gestellt |
09 | ADD HL,BC | Addition HL,BC | aktueller Inhalt des Registerpaares BC wird zum aktuellen Inhalt des Registerpaares HL addiert - Ergebnis steht in HL | Flags werden entsprechend gestellt |
19 | ADD HL,DE | Addition HL,DE | aktueller Inhalt des Registerpaares DE wird zum aktuellen Inhalt des Registerpaares HL addiert - Ergebnis steht in HL | Flags werden entsprechend gestellt |
29 | ADD HL,HL | Addition HL,HL | aktueller Inhalt des Registerpaares HL wird zum aktuellen Inhalt des Registerpaares HL addiert - Ergebnis steht in HL | Flags werden entsprechend gestellt |
39 | ADD HL,SP | Addition HL,SP | aktueller Inhalt des Registerpaares SP wird zum aktuellen Inhalt des Registerpaares HL addiert - Ergebnis steht in HL | Flags werden entsprechend gestellt |
DD 09 | ADD IX,BC | Addition IX,BC | aktueller Inhalt des Registerpaares BC wird zum aktuellen Inhalt des Registerpaares IX addiert - Ergebnis steht in IX | Flags werden entsprechend gestellt |
DD 19 | ADD IX,DE | Addition IX,DE | aktueller Inhalt des Registerpaares DE wird zum aktuellen Inhalt des Registerpaares IX addiert - Ergebnis steht in IX | Flags werden entsprechend gestellt |
DD 29 | ADD IX,HL | Addition IX,HL | aktueller Inhalt des Registerpaares HL wird zum aktuellen Inhalt des Registerpaares IX addiert - Ergebnis steht in IX | Flags werden entsprechend gestellt |
DD 39 | ADD IX,SP | Addition IX,SP | aktueller Inhalt des Registerpaares SP wird zum aktuellen Inhalt des Registerpaares IX addiert - Ergebnis steht in IX | Flags werden entsprechend gestellt |
FD 09 | ADD IY,BC | Addition IY,BC | aktueller Inhalt des Registerpaares BC wird zum aktuellen Inhalt des Registerpaares IY addiert - Ergebnis steht in IY | Flags werden entsprechend gestellt |
FD 19 | ADD IY,DE | Addition IY,DE | aktueller Inhalt des Registerpaares DE wird zum aktuellen Inhalt des Registerpaares IY addiert - Ergebnis steht in IY | Flags werden entsprechend gestellt |
FD 29 | ADD IY,HL | Addition IY,HL | aktueller Inhalt des Registerpaares HL wird zum aktuellen Inhalt des Registerpaares IY addiert - Ergebnis steht in IY | Flags werden entsprechend gestellt |
FD 39 | ADD IY,SP | Addition IY,SP | aktueller Inhalt des Registerpaares SP wird zum aktuellen Inhalt des Registerpaares IY addiert - Ergebnis steht in IY | Flags werden entsprechend gestellt |
2. AND-Befehle |
![]() |
![]() |
![]() |
![]() |
16 Bit Ladebefehle schreiben definierte Werte in eine 16-Bit-Ergebniszelle. Dies kann ein Register paar oder aber auch zwei aufeinanderfolgende Speicherzellen der Breite von 8 Bit sein. Flags werden hierbei grundsätzlich nicht gesetzt. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
A6 | AND (HL) | Logical AND (HL) - Accumulator | der Inhalt der durch HL spezifizierten Speicherzelle wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
DD A6 d | AND (IX+d) | Logical AND (IX+d) - Accumulator | der Inhalt der durch IX+Verschiebung spezifizierten Speicherzelle wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
FD A6 d | AND (IY+d) | Logical AND (IY+d) - Accumulator | der Inhalt der durch IX+Verschiebung spezifizierten Speicherzelle wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
A7 | AND A | Logical AND A - Accumulator | der Inhalt des Registers A wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
A0 | AND B | Logical AND B - Accumulator | der Inhalt des Registers B wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
A1 | AND C | Logical AND C - Accumulator | der Inhalt des Registers C wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
A2 | AND D | Logical AND D - Accumulator | der Inhalt des Registers D wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
A3 | AND E | Logical AND E - Accumulator | der Inhalt des Registers E wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
A4 | AND H | Logical AND H - Accumulator | der Inhalt des Registers H wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
A5 | AND L | Logical AND L - Accumulator | der Inhalt des Registers L wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
E6 n | AND n | Logical AND n - Accumulator | der Inhalt des Direktwertes n wird mit dem Inhalt des Registers A UND-verknüpft | Flags werden entsprechend gestellt |
3. Bit-Testbehle |
![]() |
![]() |
![]() |
![]() |
Hauptaufgabe ist das neu Berechnen und Einstellen des Programmzählers. Der nächste abzuarbeitende Befehl wird dann von dieser neuen Adresse gebildet. Die Mehrheit der Befehle wertet die Flags aus. Vorteilhaft lassen sich relative Sprünge einsetzen. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
CB 46 | BIT 0,(HL) | Bittest 0,(HL) | ZERO-Flag ergibt sich aus dem Bit 0 des durch Register HL adressierten Speicherinhalts | Flags werden entsprechend gestellt |
DD CB d | 46 BIT 0,(IX+d) | Bittest 0, (IX+d) | ZERO-Flag ergibt sich aus dem Bit 0 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
FD CB d 46 | BIT 0,(IY+d) | Bittest 0, (IY+d) | ZERO-Flag ergibt sich aus dem Bit 0 des durch Register IY+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
CB 47 | BIT 0,A | Bittest 0,A | ZERO-Flag ergibt sich aus dem Bit 0 des Registers A | Flags werden entsprechend gestellt |
CB 40 | BIT 0,B | Bittest 0,B | ZERO-Flag ergibt sich aus dem Bit 0 des Registers B | Flags werden entsprechend gestellt |
CB 41 | BIT 0,C | Bittest 0,C | ZERO-Flag ergibt sich aus dem Bit 0 des Registers C | Flags werden entsprechend gestellt |
CB 42 | BIT 0,D | Bittest 0,D | ZERO-Flag ergibt sich aus dem Bit 0 des Registers C | Flags werden entsprechend gestellt |
CB 43 | BIT 0,E | Bittest 0,E | ZERO-Flag ergibt sich aus dem Bit 0 des Registers E | Flags werden entsprechend gestellt |
CB 44 | BIT 0,H | Bittest 0,H | ZERO-Flag ergibt sich aus dem Bit 0 des Registers H | Flags werden entsprechend gestellt |
CB 45 | BIT 0,L | Bittest 0,L | ZERO-Flag ergibt sich aus dem Bit 0 des Registers L | Flags werden entsprechend gestellt |
CB 4E | BIT 1,(HL) | Bittest 1,(HL) | ZERO-Flag ergibt sich aus dem Bit 1 des durch Register HL adressierten Speicherinhalts | Flags werden entsprechend gestellt |
DD CB d 4E | BIT 1,(IX+d) | Bittest 1,(IX+1) | ZERO-Flag ergibt sich aus dem Bit 1 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
FD CB d 4E | BIT 1,(IY+d) | Bittest 1,(IY+1) | ZERO-Flag ergibt sich aus dem Bit 1 des durch Register IY+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
CB 4F | BIT 1,A | Bittest 1,A | ZERO-Flag ergibt sich aus dem Bit 1 des Registers A | Flags werden entsprechend gestellt |
CB 48 | BIT 1,B | Bittest 1,B | ZERO-Flag ergibt sich aus dem Bit 1 des Registers B | Flags werden entsprechend gestellt |
CB 49 | BIT 1,C | Bittest 1,C | ZERO-Flag ergibt sich aus dem Bit 1 des Registers C | Flags werden entsprechend gestellt |
CB 4A | BIT 1,D | Bittest 1,D | ZERO-Flag ergibt sich aus dem Bit 1 des Registers D | Flags werden entsprechend gestellt |
CB 4B | BIT 1,E | Bittest 1,E | ZERO-Flag ergibt sich aus dem Bit 1 des Registers E | Flags werden entsprechend gestellt |
CB 4C | BIT 1,H | Bittest 1,H | ZERO-Flag ergibt sich aus dem Bit 1 des Registers H | Flags werden entsprechend gestellt |
CB 4D | BIT 1,L | Bittest 1,L | ZERO-Flag ergibt sich aus dem Bit 0 des Registers L | Flags werden entsprechend gestellt |
CB 56 | BIT 2,(HL) | Bittest 2,(HL) | ZERO-Flag ergibt sich aus dem Bit 2 des durch Register HL adressierten Speicherinhalts | Flags werden entsprechend gestellt |
DD CB d 56 | BIT 2,(IX+d) | Bittest 2,(IX+d) | ZERO-Flag ergibt sich aus dem Bit 2 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
FD CB d 56 | BIT 2,(IY+d) | Bittest 2,(IY+d) | ZERO-Flag ergibt sich aus dem Bit 2 des durch Register IY+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
CB 57 | BIT 2,A | Bittest 2,A | ZERO-Flag ergibt sich aus dem Bit 2 des Registers A | Flags werden entsprechend gestellt |
CB 50 | BIT 2,B | Bittest 2,B | ZERO-Flag ergibt sich aus dem Bit 2 des Registers B | Flags werden entsprechend gestellt |
CB 51 | BIT 2,C | Bittest 2,C | ZERO-Flag ergibt sich aus dem Bit 2 des Registers C | Flags werden entsprechend gestellt |
CB 52 | BIT 2,D | Bittest 2,D | ZERO-Flag ergibt sich aus dem Bit 2 des Registers D | Flags werden entsprechend gestellt |
CB 53 | BIT 2,E | Bittest 2,E | ZERO-Flag ergibt sich aus dem Bit 2 des Registers E | Flags werden entsprechend gestellt |
CB 54 | BIT 2,H | Bittest 2,H | ZERO-Flag ergibt sich aus dem Bit 2 des Registers H | Flags werden entsprechend gestellt |
CB 55 | BIT 2,L | Bittest 2,L | ZERO-Flag ergibt sich aus dem Bit 2 des Registers L | Flags werden entsprechend gestellt |
CB 5E | BIT 3,(HL) | Bittest 3,(HL) | ZERO-Flag ergibt sich aus dem Bit 3 des durch Register HL adressierten Speicherinhalts | Flags werden entsprechend gestellt |
DD CB d 5E | BIT 3,(IX+d) | Bittest 3,(IX+d) | ZERO-Flag ergibt sich aus dem Bit 3 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
FD CB d 5E | BIT 3,(IY+d) | Bittest 3,(IY+d) | ZERO-Flag ergibt sich aus dem Bit 3 des durch Register IY+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
CB 5F | BIT 3,A | Bittest 3,A | ZERO-Flag ergibt sich aus dem Bit 3 des Registers A | Flags werden entsprechend gestellt |
CB 58 | BIT 3,B | Bittest 3,B | ZERO-Flag ergibt sich aus dem Bit 3 des Registers B | Flags werden entsprechend gestellt |
CB 59 | BIT 3,C | Bittest 3,C | ZERO-Flag ergibt sich aus dem Bit 3 des Registers C | Flags werden entsprechend gestellt |
CB 5A | BIT 3,D | Bittest 3,D | ZERO-Flag ergibt sich aus dem Bit 3 des Registers D | Flags werden entsprechend gestellt |
CB 5B | BIT 3,E | Bittest 3,E | ZERO-Flag ergibt sich aus dem Bit 3 des Registers E | Flags werden entsprechend gestellt |
CB 5C | BIT 3,H | Bittest 3,H | ZERO-Flag ergibt sich aus dem Bit 3 des Registers H | Flags werden entsprechend gestellt |
CB 5D | BIT 3,L | Bittest 3,L | ZERO-Flag ergibt sich aus dem Bit 3 des Registers L | Flags werden entsprechend gestellt |
CB 66 | BIT 4,(HL) | Bittest 4,(HL) | ZERO-Flag ergibt sich aus dem Bit 4 des durch Register HL adressierten Speicherinhalts | Flags werden entsprechend gestellt |
DD CB d 66 | BIT 4,(IX+d) | Bittest 4,(IX+d) | ZERO-Flag ergibt sich aus dem Bit 4 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
FD CB d 66 | BIT 4,(IY+d) | Bittest 4,(IY+d) | ZERO-Flag ergibt sich aus dem Bit 4 des durch Register IY+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
CB 67 | BIT 4,A | Bittest 4,A | ZERO-Flag ergibt sich aus dem Bit 4 des Registers A | Flags werden entsprechend gestellt |
CB 60 | BIT 4,B | Bittest 4,B | ZERO-Flag ergibt sich aus dem Bit 4 des Registers B | Flags werden entsprechend gestellt |
CB 61 | BIT 4,C | Bittest 4,C | ZERO-Flag ergibt sich aus dem Bit 4 des Registers C | Flags werden entsprechend gestellt |
CB 62 | BIT 4,D | Bittest 4,D | ZERO-Flag ergibt sich aus dem Bit 4 des Registers D | Flags werden entsprechend gestellt |
CB 63 | BIT 4,E | Bittest 4,E | ZERO-Flag ergibt sich aus dem Bit 4 des Registers E | Flags werden entsprechend gestellt |
CB 64 | BIT 4,H | Bittest 4,H | ZERO-Flag ergibt sich aus dem Bit 4 des Registers H | Flags werden entsprechend gestellt |
CB 65 | BIT 4,L | Bittest 4,L | ZERO-Flag ergibt sich aus dem Bit 4 des Registers L | Flags werden entsprechend gestellt |
CB 6E | BIT 5,(HL) | Bittest 5,(HL) | ZERO-Flag ergibt sich aus dem Bit 5 des durch Register HL adressierten Speicherinhalts | Flags werden entsprechend gestellt |
DD CB d 6E | BIT 5,(IX+d) | Bittest 5,(IX+d) | ZERO-Flag ergibt sich aus dem Bit 5 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
FD CB d 6E | BIT 5,(IY+d) | Bittest 5,(IY+d) | ZERO-Flag ergibt sich aus dem Bit 5 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
CB 6F | BIT 5,A | Bittest 5,A | ZERO-Flag ergibt sich aus dem Bit 5 des Registers A | Flags werden entsprechend gestellt |
CB 68 | BIT 5,B | Bittest 5,B | ZERO-Flag ergibt sich aus dem Bit 5 des Registers B | Flags werden entsprechend gestellt |
CB 69 | BIT 5,C | Bittest 5,C | ZERO-Flag ergibt sich aus dem Bit 5 des Registers C | Flags werden entsprechend gestellt |
CB 6A | BIT 5,D | Bittest 5,D | ZERO-Flag ergibt sich aus dem Bit 5 des Registers D | Flags werden entsprechend gestellt |
CB 6B | BIT 5,E | Bittest 5,E | ZERO-Flag ergibt sich aus dem Bit 5 des Registers E | Flags werden entsprechend gestellt |
CB 6C | BIT 5,H | Bittest 5,H | ZERO-Flag ergibt sich aus dem Bit 5 des Registers H | Flags werden entsprechend gestellt |
CB 6D | BIT 5,L | Bittest 5,L | ZERO-Flag ergibt sich aus dem Bit 5 des Registers L | Flags werden entsprechend gestellt |
CB 76 | BIT 6,(HL) | Bittest 6,(HL) | ZERO-Flag ergibt sich aus dem Bit 6 des durch Register HL adressierten Speicherinhalts | Flags werden entsprechend gestellt |
DD CB d 76 | BIT 6,(IX+d) | Bittest 6,(IX+d) | ZERO-Flag ergibt sich aus dem Bit 6 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
FD CB d 76 | BIT 6,(IY+d) | Bittest 6,(IY+d) | ZERO-Flag ergibt sich aus dem Bit 6 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
CB 77 | BIT 6,A | Bittest 6,A | ZERO-Flag ergibt sich aus dem Bit 6 des Registers A | Flags werden entsprechend gestellt |
CB 70 | BIT 6,B | Bittest 6,B | ZERO-Flag ergibt sich aus dem Bit 6 des Registers B | Flags werden entsprechend gestellt |
CB 71 | BIT 6,C | Bittest 6,C | ZERO-Flag ergibt sich aus dem Bit 6 des Registers C | Flags werden entsprechend gestellt |
CB 72 | BIT 6,D | Bittest 6,D | ZERO-Flag ergibt sich aus dem Bit 6 des Registers D | Flags werden entsprechend gestellt |
CB 73 | BIT 6,E | Bittest 6,E | ZERO-Flag ergibt sich aus dem Bit 6 des Registers E | Flags werden entsprechend gestellt |
CB 74 | BIT 6,H | Bittest 6,H | ZERO-Flag ergibt sich aus dem Bit 6 des Registers H | Flags werden entsprechend gestellt |
CB 75 | BIT 6,L | Bittest 6,L | ZERO-Flag ergibt sich aus dem Bit 6 des Registers L | Flags werden entsprechend gestellt |
CB 7E | BIT 7,(HL) | Bittest 7,(HL) | ZERO-Flag ergibt sich aus dem Bit 7 des durch Register HL adressierten Speicherinhalts | Flags werden entsprechend gestellt |
DD CB d 7E | BIT 7,(IX+d) | Bittest 7,(IX+d) | ZERO-Flag ergibt sich aus dem Bit 7 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
FD CB d 7E | BIT 7,(IY+d) | Bittest 7,(IY+d) | ZERO-Flag ergibt sich aus dem Bit 7 des durch Register IX+Verschiebung adressierten Speicherinhalts | Flags werden entsprechend gestellt |
CB 7F | BIT 7,A | Bittest 7,A | ZERO-Flag ergibt sich aus dem Bit 7 des Registers A | Flags werden entsprechend gestellt |
CB 78 | BIT 7,B | Bittest 7,B | ZERO-Flag ergibt sich aus dem Bit 7 des Registers B | Flags werden entsprechend gestellt |
CB 79 | BIT 7,C | Bittest 7,C | ZERO-Flag ergibt sich aus dem Bit 7 des Registers C | Flags werden entsprechend gestellt |
CB 7A | BIT 7,D | Bittest 7,D | ZERO-Flag ergibt sich aus dem Bit 7 des Registers D | Flags werden entsprechend gestellt |
CB 7B | BIT 7,E | Bittest 7,E | ZERO-Flag ergibt sich aus dem Bit 7 des Registers E | Flags werden entsprechend gestellt |
CB 7C | BIT 7,H | Bittest 7,H | ZERO-Flag ergibt sich aus dem Bit 7 des Registers H | Flags werden entsprechend gestellt |
CB 7D | BIT 7,L | Bittest 7,L | ZERO-Flag ergibt sich aus dem Bit 7 des Registers L | Flags werden entsprechend gestellt |
4. CALL-Befehle |
![]() |
![]() |
![]() |
![]() |
Unterprogramme sind für die Assemblerprogrammierung die Möglichkeit, effektiv den verfügbaren Speicherraum zu nutzen. Dabei gilt besonderes Augenmerk der Stapelverwaltung sowie der Datenrettung. Beachte, dass immer erst der L- dann erst der H-Teil der Zieladresse anzugeben ist. Alle der hier gelisteten Befehle springen auf eine feste Adresse - das ist ungünstig. Wesentlich effizienter reagieren die realtiven Sprünge - wann immer sie sich statt des Unterprgrammaufrufs realisieren lassen. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
DC nn | CAC nn | Call On Carry nn | bedingter Aufruf von Adresse nn unter der Bedingung, dass CARRY-Flag=1 |
|
FC nn | CAM nn | Call On Sign nn | bedingter Aufruf von Adresse nn unter der Bedingung, dass SIGN-Flag=1 |
|
D4 nn | CANC nn | Call On Not Carry nn | bedingter Aufruf von Adresse nn unter der Bedingung, dass CARRY-Flag=0 |
|
CD nn | CALL nn | Call nn | unbedingter Aufruf von Adresse nn |
|
C4 nn | CANZ nn | Call On Not Zero nn | bedingter Aufruf von Adresse nn unter der Bedingung, dass ZERO-Flag=0 |
|
F4 nn | CAP nn | Call On Parity nn | bedingter Aufruf von Adresse nn unter der Bedingung, dass OVERFLOW-Flag=1 |
|
EC nn | CAPE nn | Call On Parity Even nn | bedingter Aufruf von Adresse nn unter der Bedingung, dass PARYTY-Flag=1 (Parität ist paarig) |
|
E4 nn | CAPO nn | Call On Parity Odd nn | bedingter Aufruf von Adresse nn unter der Bedingung, dass PARYTY-Flag=0 (Parität ist unpaarig) |
|
CC nn | CAZ nn | Call On Zero nn | bedingter Aufruf von Adresse nn unter der Bedingung, dass ZERO-Flag=1 |
|
5. Komplementärbefehl |
![]() |
![]() |
![]() |
![]() |
Mit diesem Befehl wird das CARRY-Flag-Bit umgekehrt. Flag-Wirkung hier einzusehen. |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
3F | CCF |
6. Compare- oder Such- und Vergleichsbefehle |
![]() |
![]() |
![]() |
![]() |
Vergleichs- bzw. Suchbefehle haben 8-Bit Breite und beziehen sich auf der einen Vergleichsseite immer auf den Akkumulator . Flag-Wirkung hier einzusehen. |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
BE | CPM | Compare (HL) - A | Vergleich des durch Registerpaar HL adressierten Speicherinhalts mit dem Akkumulator | Flags werden entsprechend gestellt |
DD BE d | CPM (IX+d) | Compare (IX+d) - A | Vergleich des durch Register IX+Verschiebung adressierten Speicherinhalts mit dem Akkumulator | Flags werden entsprechend gestellt |
FD BE d | CPM (IY+d) | Compare (IY+d) - A | Vergleich des durch Register IY+Verschiebung adressierten Speicherinhalts mit dem Akkumulator | Flags werden entsprechend gestellt |
BF | CPM A | Compare A - A | Vergleich des Register A mit dem Akkumulator | Flags werden entsprechend gestellt |
B8 | CPM B | Compare B - A | Vergleich des Register B mit dem Akkumulator | Flags werden entsprechend gestellt |
B9 | CPM C | Compare C - A | Vergleich des Register C mit dem Akkumulator | Flags werden entsprechend gestellt |
BA | CPM D | Compare D - A | Vergleich des Register D mit dem Akkumulator | Flags werden entsprechend gestellt |
BB | CPM E | Compare E - A | Vergleich des Register E mit dem Akkumulator | Flags werden entsprechend gestellt |
BC | CPM H | Compare H - A | Vergleich des Register H mit dem Akkumulator | Flags werden entsprechend gestellt |
BD | CPM L | Compare L - A | Vergleich des Register L mit dem Akkumulator | Flags werden entsprechend gestellt |
ED A9 | CPD | Vergleich des durch Registerpaar HL indizierten Speicherplatz mit dem Akkumulator | A![]() HL ![]() BC ![]() Flags werden entsprechend gestellt |
|
FE n | CPM n | Compare n - A | Vergleich des Direktwertes n mit dem Akkumulator | |
ED B9 | CPDR | A![]() HL ![]() BC ![]() Wiederholung bis BC=0 oder A = (HL) |
||
ED A1 | CPI | |||
ED B1 | CPIR |
7. Komplement Befehl sowie Dezimalkorrektur |
![]() |
![]() |
![]() |
![]() |
Ziel aller hier aufgeführten Operationen ist das Akkumulator-Register. Meist ist es auch Quelle für einen der Operanden. Flags werden hier entsprechend dem Ergebnis der Operation sowie ihrer Funktion folgend gestellt. Flag-Wirkung hier einzusehen. |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
2F | CPL | Complement | ||
27 | DAA | Decimal Adjust Accumulator | Dezimalkorrektur des Akkumulators nach einer arithmetischen oder logischen Operation für den Fall, dass das Ergebnis 09H überschritten hat | Intern wird zum Akkumulatorinhalt 06H addiert, wenn das Ergebnis der vorangegangenen Operation größer als 09H war |
8. Decrementierbefehle |
![]() |
![]() |
![]() |
![]() |
Ziel der hier aufgeführten Operationen ist das Akkumulator-Register und/oder das CARRY-Flag. Es auch Quelle und Ziel für für die Operation. Flags werden hier entsprechend dem Ergebnis der Operation sowie ihrer Funktion folgend gestellt. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
35 | DEC (HL) | Decrement (HL) | verringert den Inhalt des durch HL adressierten Speicherplatz um eins | Flags werden entsprechend gestellt |
DD 35 d | DEC (IX+d) | Decrement IX | verringert den Inhalt des durch IX+Verschiebung adressierten Speicherplatz um eins | Flags werden entsprechend gestellt |
FD 35 d | DEC (IY+d) | Decrement IY | verringert den Inhalt des durch IY+Verschiebung adressierten Speicherplatz um eins | Flags werden entsprechend gestellt |
3D | DEC A | Decrement A | verringert den Inhalt des Accumulators um eins | Flags werden entsprechend gestellt |
05 | DEC B | Decrement B | verringert den Inhalt des Registers B um eins | Flags werden entsprechend gestellt |
0B | DEC BC | Decrement BC | verringert den Inhalt des Registerpaares BC um eins | Flags werden entsprechend gestellt |
0D | DEC C | Decrement C | verringert den Inhalt des Registers C um eins | Flags werden entsprechend gestellt |
15 | DEC D | Decrement D | verringert den Inhalt des Registers D um eins | Flags werden entsprechend gestellt |
1B | DEC DE | Decrement DE | verringert den Inhalt des Registerpaares DE um eins | Flags werden entsprechend gestellt |
1D | DEC E | Decrement E | verringert den Inhalt des Registers E um eins | Flags werden entsprechend gestellt |
25 | DEC H | Decrement H | verringert den Inhalt des Registers H um eins | Flags werden entsprechend gestellt |
2B | DEC HL | Decrement HL | verringert den Inhalt des Registerpaares HL um eins | Flags werden entsprechend gestellt |
DD 2B | DEC IX | Decrement IX | verringert den Inhalt des Registers IX um eins | Flags werden entsprechend gestellt |
FD 2B | DEC IY | Decrement IY | verringert den Inhalt des Registers IY um eins | Flags werden entsprechend gestellt |
2D | DEC L | Decrement L | verringert den Inhalt des Registers L um eins | Flags werden entsprechend gestellt |
3B | DEC SP | Decrement SP | verringert den Inhalt des Registers SP um eins | Flags werden entsprechend gestellt |
9. Disable Interrupt |
![]() |
![]() |
![]() |
![]() |
Hiermit wird die Annahme aller Interrupts außer NMI gesperrt. Soll innerhalb einer Interruptserviceroutine trotzdem die An ahme weiterer Interrupts möglich sein, muss auch der Interrupt wieder freigegeben werden - er wird bei Annahme eines Interrupts automatisch gesperrt. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
F3 | DI | Disable Interrupt | die Annahme weiterer Interrpt wird bis auf bis auf die Annahme des NMI gesperrt | Interruptannahme FlipFlop 1 wird zurückgesetzt |
10. Decrementieren und bedingter relativer Sprung |
![]() |
![]() |
![]() |
![]() |
Hiermit wird die Annahme aller Interrupts außer NMI gesperrt. Soll innerhalb einer Interruptserviceroutine trotzdem die An ahme weiterer Interrupts möglich sein, muss auch der Interrupt wieder freigegeben werden - er wird bei Annahme eines Interrupts automatisch gesperrt. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
10 e | DJNZ e | Decrement and Jump relativ on not ZERO | B wird um eins vermindert und relativ gesprungen, wenn B≠0 | so zu sagen die FOR - TO-Schleife des Z80 Assemblerbefehlssatzes |
11. Enable Interrupt |
![]() |
![]() |
![]() |
![]() |
Hiermit wird die Annahme aller Interrupts außer NMI gesperrt. Soll innerhalb einer Interruptserviceroutine trotzdem die An ahme weiterer Interrupts möglich sein, muss auch der Interrupt wieder freigegeben werden - er wird bei Annahme eines Interrupts automatisch gesperrt. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
FB | EI | Enable Interrupt | die Annahme weiterer Interrupt wird freigegeben und über die Annahme entscheidet lediglich die Kaskade | Interruptannahme FlipFlop 1 wird gesetzt |
12. Austauschbefehle |
![]() |
![]() |
![]() |
![]() |
Hiermit wird die Annahme aller Interrupts außer NMI gesperrt. Soll innerhalb einer Interruptserviceroutine trotzdem die An ahme weiterer Interrupts möglich sein, muss auch der Interrupt wieder freigegeben werden - er wird bei Annahme eines Interrupts automatisch gesperrt. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
E3 | EX (SP),HL | Exchange (HL),SP | Austausch der durch SP indizierten Speicheradressen mit dem Registerpaar HL |
H |
DD E3 | EX (SP),IX | Exchange (SP),IX | Austausch des Inhaltes von IX mit dem Register SP indizierten Speicheradressen |
IXH |
FD E3 | EX (SP),IY | Exchange (SP),IY | Austausch des Inhaltes von IY mit dem Register SP indizierten Speicheradressen |
IYH |
08 | EX AF | Exchange AF,AF' | Tausch des Hauptregisterpaares AF mit dem Alternativregisterpaar AF' |
AF |
EB | EX DE,HL | Exchange DE,HL | Tausch des Inhaltes des Regsiterpaares DE mit dem des Inhaltes des Regsiterpaares HL |
DE |
D9 | EXX | Exchange X | Tausch des Haupt- mit dem Alternativregistersatz |
BC |
13. HALT-Befehl |
![]() |
![]() |
![]() |
![]() |
Hiermit wird die Annahme aller Interrupts außer NMI gesperrt. Soll innerhalb einer Interruptserviceroutine trotzdem die An ahme weiterer Interrupts möglich sein, muss auch der Interrupt wieder freigegeben werden - er wird bei Annahme eines Interrupts automatisch gesperrt. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
76 | HALT | HALT-Befehl | Stopp der weiteren Prozessorarbeit nach Abarbeitung des letzten Befehls | aus dem HALT kommt die CPU mit einem Interrupt (wenn dieser zuvor freigegeben wurde), mit einem NMI oder RESET wieder heraus |
14. Interruptmode-Befehl |
![]() |
![]() |
![]() |
![]() |
Hiermit wird die Annahme aller Interrupts außer NMI gesperrt. Soll innerhalb einer Interruptserviceroutine trotzdem die An ahme weiterer Interrupts möglich sein, muss auch der Interrupt wieder freigegeben werden - er wird bei Annahme eines Interrupts automatisch gesperrt. |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
ED 46 | IM 0 | Interrpt-Mode 0 | nur die Kurzrufadressen fungieren als Interruptadressen (dort müssen dann auch die Einsprungadressen stehen) | Register retten nicht vergessen |
ED 56 | IM 1 | Interrpt-Mode 1 | die Einsprungadresse ergibt sich direkt aus dem Vektor des anmeldenden Kanals im L-Teil, der H-Teil wird vom I-Register der CPU bereitgestellt | |
ED 5E | IM 2 | Interrpt-Mode 2 | die Vektoradresse ergibt sich aus dem Vektor des anmeldenden Kanals im L-Teil, der H-Teil wird vom I-Register der CPU bereitgestellt. Auf der Vektoradresse muss dann der Einsprung für die Interruptserviceroutine stehen. |
15. Input-Befehle |
![]() |
![]() |
![]() |
![]() |
Ein 8-Bit Wert wird direkt aus einem externen Gerätekanal ausgelesen und in den Akkumlator der CPU eingeschrieben. Dort steht er zur weiteren Verarbeitung bereit. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
ED 78 | IN A | Input (A) | der durch Register A adressierte Kanal wird in Register A eingelesen | A![]() |
DB n | IN n | Input (n) | der durch den HEX-Wert n adressierte Kanal wird in Register A eingelesen | A![]() |
ED 40 | IN B | Input (B) | der durch Register B adressierte Kanal wird in Register A eingelesen | B![]() |
ED 48 | IN C | Input (C) | der durch Register C adressierte Kanal wird in Register A eingelesen | C![]() |
ED 50 | IN D | Input (D) | der durch Register D adressierte Kanal wird in Register A eingelesen | D![]() |
ED 58 | IN E | Input (E) | der durch Register E adressierte Kanal wird in Register A eingelesen | E![]() |
ED 60 | IN H | Input (H) | der durch Register H adressierte Kanal wird in Register A eingelesen | H![]() |
ED 68 | IN L | Input (L) | der durch Register L adressierte Kanal wird in Register A eingelesen | L![]() |
16. Increment-Befehle |
![]() |
![]() |
![]() |
![]() |
Hiermit wird die Annahme aller Interrupts außer NMI gesperrt. Soll innerhalb einer Interruptserviceroutine trotzdem die An ahme weiterer Interrupts möglich sein, muss auch der Interrupt wieder freigegeben werden - er wird bei Annahme eines Interrupts automatisch gesperrt. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
34 | INC (HL) | Increment (HL) | erhöht den Inhalt des durch HL adressierten Speicherplatz um eins | Flags werden entsprechend gestellt |
DD 34 d | INC (IX+d) | Increment (IX+d) | erhöht den Inhalt des durch IX+Verschiebung adressierten Speicherplatz um eins | Flags werden entsprechend gestellt |
FD 34 d | INC (IY+d) | Increment (IY+d) | erhöht den Inhalt des durch IY+Verschiebung adressierten Speicherplatz um eins | Flags werden entsprechend gestellt |
3C | INC A | Increment A | erhöht den Inhalt des Accumulators um eins | Flags werden entsprechend gestellt |
04 | INC B | Increment B | erhöht den Inhalt des Registers B um eins | Flags werden entsprechend gestellt |
03 | INC BC | Increment BC | erhöht den Inhalt des Registerpaares BC um eins | Flags werden entsprechend gestellt |
0C | INC C | Increment C | erhöht den Inhalt des Registers C um eins | Flags werden entsprechend gestellt |
14 | INC D | Increment D | erhöht den Inhalt des Registers D um eins | Flags werden entsprechend gestellt |
13 | INC DE | Increment DE | erhöht den Inhalt des Registerpaares DE um eins | Flags werden entsprechend gestellt |
1C | INC E | Increment E | erhöht den Inhalt des Registers E um eins | Flags werden entsprechend gestellt |
24 | INC H | Increment H | erhöht den Inhalt des Registers H um eins | Flags werden entsprechend gestellt |
23 | INC HL | Increment HL | erhöht den Inhalt des Registerpaares HL um eins | Flags werden entsprechend gestellt |
DD 23 | INC IX | Increment IX | erhöht den Inhalt des Registers IX um eins | Flags werden entsprechend gestellt |
FD 23 | INC IY | Increment IY | erhöht den Inhalt des Registers IY um eins | Flags werden entsprechend gestellt |
2C | INC L | Increment L | erhöht den Inhalt des Registers L um eins | Flags werden entsprechend gestellt |
33 | INC SP | Increment SP | erhöht den Inhalt des Registers SP um eins | Flags werden entsprechend gestellt |
17. Input-Befehle |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
ED AA | IND | Input And Decrement | liest den Inhalt des durch Register C adressierten Kanals in den Akkumulator und verringert den Inhalt des Registers B um eins | (HL)![]() B ![]() HL ![]() |
ED BA | INDR | Input And Decrement And Repeat | liest den Inhalt des durch Register C adressierten Kanals in den Akkumulator und verringert den Inhalt des Registers B um eins, Wiederholung bis B=0 | (HL)![]() B ![]() HL ![]() Wiederholung bis B=0 |
ED 70 | INF | Input CARRY-Flag | liest das Bit 0 des durch C adressierten Kanals in das CARRY-Flag | F![]() |
ED A2 | INI | Input And Increment | liest den Inhalt des durch Register C adressierten Kanals in den Akkumulator und erhöht den Inhalt des Registers B um eins | (HL)![]() B ![]() HL ![]() |
ED B2 | INIR | Input And Increment And Repeat | liest den Inhalt des durch Register C adressierten Kanals in den Akkumulator und erhöht den Inhalt des Registers B um eins, Wiederholung bis B=0 | (HL)![]() B ![]() HL ![]() Wiederholung bis B=0 |
18. Sprungbefehle |
![]() |
![]() |
![]() |
![]() |
Hier nun werden Verzweigungen bedingt oder unbedingt ausgeführt. Flag-Wirkung hier einzusehen. |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
E9 | JMP (HL) | Jump (HL) | direkter und unbedingter Sprung auf die durch HL indizierte Adresse | der folgende Befehl wird von der Adresse,
welche durch HL angegeben wird, ausgeführt PC ![]() |
DD E9 | JMP (IX) | Jump (IX) | direkter und unbedingter Sprung auf die durch IX indizierte Adresse | der folgende Befehl wird von der Adresse,
welche durch IX angegeben wird, ausgeführt PC ![]() |
FD E9 | JMP (IY) | Jump (IY) | ||
DA nn | JPC nn | Jump On CARRY nn | ||
FA nn | JPM nn | Jump On Sign nn | ||
D2 nn | JPNC nn | Jump On Not CARRY nn | ||
C3 nn | JMP nn | Jump nn | ||
C2 nn | JPNZ nn | Jump On Not ZERO nn | ||
F2 nn | JPP nn | Jump On PARITY nn | ||
EA nn | JPPE nn | Jump On PARITY Even nn | ||
E2 nn | JPPO nn | Jump On PARITY Odd nn | ||
CA nn | JPZ nn | Jump On ZERO nn | ||
38 e | JRC e | Jump Relativ On CARRY e | ||
18 e | JR e | Jump Relativ e | ||
30 e | JRNC e | Jump Relativ On Not CARRY e | ||
20 e | JRNZ e | Jump Relativ On Not ZERO e | ||
28 e | JRZ e | Jump Relativ On ZERO e |
19. Ladebefehle |
![]() |
![]() |
![]() |
![]() |
Mit dieser Befehlsgruppe werden den Registern und/oder externen Speicherplätzen Werte zugewiesen. Sollte das Ziel dabei 16 Bit umfassen, so ist zu beachten, dass der niederwertige Teil immer zuerst angegeben werden muss. Flag-Wirkung hier einzusehen. |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
02 | LD (BC),A | Load (BC), A | lädt den durch BC adressierte Speicherzelle mit dem Inhalt des Registers A | Flags entsprechend |
12 | LD (DE),A | lädt den durch DE adressierte Speicherzelle mit dem Inhalt des Registers A | Flags entsprechend | |
77 | LD (HL),A | lädt den durch HL adressierte Speicherzelle mit dem Inhalt des Registers A | Flags entsprechend | |
70 | LD (HL),B | lädt den durch HL adressierte Speicherzelle mit dem Inhalt des Registers B | Flags entsprechend | |
71 | LD (HL),C | lädt den durch HL adressierte Speicherzelle mit dem Inhalt des Registers C | Flags entsprechend | |
72 | LD (HL),D | lädt den durch HL adressierte Speicherzelle mit dem Inhalt des Registers D | Flags entsprechend | |
73 | LD (HL),E | lädt den durch HL adressierte Speicherzelle mit dem Inhalt des Registers E | Flags entsprechend | |
74 | LD (HL),H | Flags entsprechend | ||
75 | LD (HL),L | Flags entsprechend | ||
36 n | LD (HL),n | Flags entsprechend | ||
DD 77 d | LD (IX+d),A | Flags entsprechend | ||
DD 70 d | LD (IX+d),B | Flags entsprechend | ||
DD 71 d | LD (IX+d),C | Flags entsprechend | ||
DD 72 d | LD (IX+d),D | Flags entsprechend | ||
DD 73 d | LD (IX+d),E | Flags entsprechend | ||
DD 74 d | LD (IX+d),H | Flags entsprechend | ||
DD 75 d | LD (IX+d),L | Flags entsprechend | ||
DD 36 d n | LD (IX+d),n | Flags entsprechend | ||
FD 77 d | LD (IY+d),A | Flags entsprechend | ||
FD 70 d | LD (IY+d),B | Flags entsprechend | ||
FD 71 d | LD (IY+d),C | Flags entsprechend | ||
FD 72 d | LD (IY+d),D | Flags entsprechend | ||
FD 73 d | LD (IY+d),E | Flags entsprechend | ||
FD 74 d | LD (IY+d),H | Flags entsprechend | ||
FD 75 d | LD (IY+d),L | Flags entsprechend | ||
FD 36 d n | LD (IY+d),n | Flags entsprechend | ||
32 nn | LD (nn),A | Flags entsprechend | ||
ED 43 nn | LD (nn),BC | Flags entsprechend | ||
ED 53 nn | LD (nn),DE | Flags entsprechend | ||
22 nn | LD (nn),HL | Flags entsprechend | ||
DD 22 nn | LD (nn),IX | Flags entsprechend | ||
FD 22 nn | LD (nn),IY | Flags entsprechend | ||
ED 73 nn | LD (nn),SP | Flags entsprechend | ||
0A | LD A,(BC) | Flags entsprechend | ||
1A | LD A,(DE) | Flags entsprechend | ||
7E | LD A,(HL) | Flags entsprechend | ||
DD 7E d | LD A,(IX+d) | Flags entsprechend | ||
FD 7E d | LD A,(IY+d) | Flags entsprechend | ||
3A nn | LD A,(nn) | Flags entsprechend | ||
7F | LD A,A | Flags entsprechend | ||
78 | LD A,B | Flags entsprechend | ||
79 | LD A,C | Flags entsprechend | ||
7A | LD A,D | Flags entsprechend | ||
7B | LD A,E | Flags entsprechend | ||
7C | LD A,H | Flags entsprechend | ||
ED 57 | LD A,I | Flags entsprechend | ||
7D | LD A,L | Flags entsprechend | ||
3E n | LD A,n | Flags entsprechend | ||
ED 5F | LD A,R | Flags entsprechend | ||
46 | LD B,(HL) | Flags entsprechend | ||
DD 46 d | LD B,(IX+d) | Flags entsprechend | ||
FD 46 d | LD B,(IY+d) | Flags entsprechend | ||
47 | LD B,A | Flags entsprechend | ||
40 | LD B,B | Flags entsprechend | ||
41 | LD B,C | Flags entsprechend | ||
42 | LD B,D | Flags entsprechend | ||
43 | LD B,E | Flags entsprechend | ||
44 | LD B,H | Flags entsprechend | ||
45 | LD B,L | |||
06 n | LD B,n | |||
4E | LD C,(HL) | |||
DD 4E d | LD C,(IX+d) | |||
FD 4E d | LD C,(IY+d) | |||
4F | LD C,A | |||
48 | LD C,B | |||
49 | LD C,C | |||
4A | LD C,D | |||
4B | LD C,E | |||
4C | LD C,H | |||
4D | LD C,L | |||
0E n | LD C,n | |||
56 | LD D,(HL) | |||
DD 56 d | LD D,(IX+d) | |||
FD 56 d | LD D,(IY+d) | |||
57 | LD D,A | |||
50 | LD D,B | |||
51 | LD D,C | |||
52 | LD D,D | |||
53 | LD D,E | |||
54 | LD D,H | |||
55 | LD D,L | |||
16 n | LD D,n | |||
ED 5B nn | LD DE,(nn) | |||
5E | LD E,(HL) | |||
DD 5E d | LD E,(IX+d) | |||
FD 5E d | LD E,(IY+d) | |||
5F | LD E,A | |||
58 | LD E,B | |||
59 | LD E,C | |||
5A | LD E,D | |||
5B | LD E,E | |||
5C | LD E,H | |||
5D | LD E,L | |||
1E n | LD E,n | |||
66 | LD H,(HL) | |||
DD 66 d | LD H,(IX+d) | |||
FD 66 d | LD H,(IY+d) | |||
67 | LD H,A | |||
60 | LD H,B | |||
61 | LD H,C | |||
62 | LD H,D | |||
63 | LD H,E | |||
64 | LD H,H | |||
65 | LD H,L | |||
26 n | LD H,n | |||
2A nn | LD HL,(nn) | |||
21 nn | LD HL,nn | |||
ED 47 | LD I,A | |||
DD 2A nn | LD IX,(nn) | |||
DD 21 nn | LD IX,nn | |||
FD 2A nn | LD IY,(nn) | |||
FD 21 nn | LD IY,nn | |||
6E | LD L,(HL) | |||
DD 6E d | LD L,(IX+d) | |||
FD 6E d | LD L,(IY+d) | |||
6F | LD L,A | |||
68 | LD L,B | |||
69 | LD L,C | |||
6A | LD L,D | |||
6B | LD L,E | |||
6C | LD L,H | |||
6D | LD L,L | |||
2E n | LD L,n | |||
ED 4F | LD R,A | |||
ED 7B nn | LD SP,(nn) | |||
F9 | LD SP,HL | |||
DD F9 | LD SP,IX | |||
FD F9 | LD SP,IY | |||
31 nn | LD SP,nn |
20. Blocktransferbefehle |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
ED AB | LDD | Lade die die durch HL adressierte Speicherzelle mit dem Inhalt der durch DE adressierten Speicherzelle, erniedrige HL sowie DE um eins | Flags werden entsprechend gestellt | |
ED B8 | LDDR | |||
ED A0 | LDI | |||
ED B0 | LDIR |
21. Negation |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
ED 44 | NEG | Zweierkomplement des Akkumulator-Registers | Flags werden entsprechend gestellt |
22. No Operation - NOP |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
00 | NOP | keine Operation außer Erhöhung von PC (REFRESH läuft weiter) - aber Zeitverlust von 4 Takten | Flags entsprechend |
23. OR-Operation |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
B6 | OR (HL) | Logical OR (HL) - Accumulator | der Inhalt der durch HL spezifizierten Speicherzelle wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
DD B6 d | OR (IX+d) | Logical OR (IX + distance) - Accumulator | der Inhalt der durch IX + Distanz spezifizierten Speicherzelle wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
FD B6 d | OR (IY+d) | Logical OR (IY + distance) - Accumulator | der Inhalt der durch IY + Distanz spezifizierten Speicherzelle wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
B7 | OR A | Logical OR A - Accumulator | der Inhalt von Register A wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
B0 | OR B | Logical OR B - Accumulator | der Inhalt von Register B wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
B1 | OR C | Logical OR C - Accumulator | der Inhalt von Register C wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
B2 | OR D | Logical OR D - Accumulator | der Inhalt von Register D wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
B3 | OR E | Logical OR E - Accumulator | der Inhalt von Register E wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
B4 | OR H | Logical OR H - Accumulator | der Inhalt von Register H wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
B5 | OR L | Logical OR L - Accumulator | der Inhalt von Register L wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
F6 n | OR n | Logical OR n - Accumulator | der Inhalt des 8-Bit-Wertes n wird bitweise mit dem Inhalt des Registers A ODER-verknüpft | Flags entsprechend |
24. OUTI bzw. OUTD-Operation |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
ED BB | OTDR | |||
ED B3 | OTIR | |||
ED AE | OUTD | |||
ED A3 | OUTI |
25. OUT-Operation |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
ED 79 | OUT A | |||
ED 41 | OUT B | |||
ED 49 | OUT C | |||
ED 51 | OUT D | |||
ED 59 | OUT E | |||
ED 61 | OUT H | |||
ED 69 | OUT L | |||
D3 n | OUT n |
26. PUSH- und POP-Operationen |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
F1 | POP AF | |||
C1 | POP BC | |||
D1 | POP DE | |||
E1 | POP HL | |||
DD E1 | POP IX | |||
FD E1 | POP IY | |||
F5 | PUSH AF | |||
C5 | PUSH BC | |||
D5 | PUSH DE | |||
E5 | PUSH HL | |||
DD E5 | PUSH IX | |||
FD E5 | PUSH IY |
27. RESET-Befehle |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
CB 86 | RES 0,(HL) | |||
DD CB d 86 | RES 0,(IX+d) | |||
FD CB d 86 | RES 0,(IY+d) | |||
CB 87 | RES 0,A | |||
CB 80 | RES 0,B | |||
CB 81 | RES 0,C | |||
CB 82 | RES 0,D | |||
CB 83 | RES 0,E | |||
CB 84 | RES 0,H | |||
CB 85 | RES 0,L | |||
CB 8E | RES 1,(HL) | |||
DD CB d 8E | RES 1,(IX+d) | |||
FD CB d 8E | RES 1,(IY+d) | |||
CB 8F | RES 1,A | |||
CB 88 | RES 1,B | |||
CB 89 | RES 1,C | |||
CB 8A | RES 1,D | |||
CB 8B | RES 1,E | |||
CB 8C | RES 1,H | |||
CB 8D | RES 1,L | |||
CB 96 | RES 2,(HL) | |||
DD CB d 96 | RES 2,(IX+d) | |||
FD CB d 96 | RES 2,(IY+d) | |||
CB 97 | RES 2,A | |||
CB 90 | RES 2,B | |||
CB 91 | RES 2,C | |||
CB 92 | RES 2,D | |||
CB 93 | RES 2,E | |||
CB 94 | RES 2,H | |||
CB 95 | RES 2,L | |||
CB 9E | RES 3,(HL) | |||
DD CB d 9E | RES 3,(IX+d) | |||
FD CB d 9E | RES 3,(IY+d) | |||
CB 9F | RES 3,A | |||
CB 98 | RES 3,B | |||
CB 99 | RES 3,C | |||
CB 9A | RES 3,D | |||
CB 9B | RES 3,E | |||
CB 9C | RES 3,H | |||
CB 9D | RES 3,L | |||
CB A6 | RES 4,(HL) | |||
DD CB d A6 | RES 4,(IX+d) | |||
FD CB d A6 | RES 4,(IY+d) | |||
CB A7 | RES 4,A | |||
CB A0 | RES 4,B | |||
CB A1 | RES 4,C | |||
CB A2 | RES 4,D | |||
CB A3 | RES 4,E | |||
CB A4 | RES 4,H | |||
CB A5 | RES 4,L | |||
CB AE | RES 5,(HL) | |||
DD CB d AE | RES 5,(IX+d) | |||
FD CB d AE | RES 5,(IY+d) | |||
CB AF | RES 5,A | |||
CB A8 | RES 5,B | |||
CB A9 | RES 5,C | |||
CB AA | RES 5,D | |||
CB AB | RES 5,E | |||
CB AC | RES 5,H | |||
CB AD | RES 5,L | |||
CB B6 | RES 6,(HL) | |||
DD CB d B6 | RES 6,(IX+d) | |||
FD CB d B6 | RES 6,(IY+d) | |||
CB B7 | RES 6,A | |||
CB B0 | RES 6,B | |||
CB B1 | RES 6,C | |||
CB B2 | RES 6,D | |||
CB B3 | RES 6,E | |||
CB B4 | RES 6,H | |||
CB B5 | RES 6,L | |||
CB BE | RES 7,(HL) | |||
DD CB d BE | RES 7,(IX+d) | |||
FD CB d BE | RES 7,(IY+d) | |||
CB BF | RES 7,A | |||
CB B8 | RES 7,B | |||
CB B9 | RES 7,C | |||
CB BA | RES 7,D | |||
CB BB | RES 7,E | |||
CB BC | RES 7,H | |||
CB BD | RES 7,L |
28. Return-Befehle |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
C9 | RET | |||
D8 | RC | |||
F8 | RM | |||
D0 | RNC | |||
C0 | RNZ | |||
F0 | RP | |||
E8 | RPE | |||
E0 | RPO | |||
C8 | RZ | |||
ED 4D | RETI | |||
ED 45 | RETN |
29. Rotations-Befehle |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
CB 16 | RL (HL) | |||
DD CB d 16 | RL (IX+d) | |||
FD CB d 16 | RL (IY+d) | |||
CB 17 | RL A | |||
CB 10 | RL B | |||
CB 11 | RL C | |||
CB 12 | RL D | |||
CB 13 | RL E | |||
CB 14 | RL H | |||
CB 15 | RL L | |||
17 | RLA | |||
CB 06 | RLC (HL) | |||
DD CB d 06 | RLC (IX+d) | |||
FD CB d 06 | RLC (IY+d) | |||
CB 07 | RLC A | |||
CB 00 | RLC B | |||
CB 01 | RLC C | |||
CB 02 | RLC D | |||
CB 03 | RLC E | |||
CB 04 | RLC H | |||
CB 05 | RLC L | |||
07 | RLCA | |||
ED 6F | RR | |||
CB 16 | RR (HL) | |||
DD CB d 16 | RR (IX+d) | |||
FD CB d 16 | RR (IY+d) | |||
CB 1F | RR A | |||
CB 18 | RR B | |||
CB 19 | RR C | |||
CB 1A | RR D | |||
CB 1B | RR E | |||
CB 1C | RR H | |||
CB 1D | RR L | |||
1F | RRA | |||
CB 0E | RRC (HL) | |||
DD CB d 0E | RRC (IX+d) | |||
FD CB d 0E | RRC (IY+d) | |||
CB 0F | RRC A | |||
CB 08 | RRC B | |||
CB 09 | RRC C | |||
CB 0A | RRC D | |||
CB 0B | RRC E | |||
CB 0C | RRC H | |||
CB 0D | RRC L | |||
0F | RRCA | |||
ED 67 | RRD |
30. RESTART-Befehle |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
C7 | RST 0 | |||
CF | RST 8 | |||
D7 | RST 10 | |||
DF | RST 18 | |||
E7 | RST 20 | |||
EF | RST 28 | |||
F7 | RST 30 | |||
FF | RST 38 |
31. Subtraktions-Befehle über CARRY |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
9E | SBC (HL) | |||
DD 9E d | SBC (IX+d) | |||
FD 9E d | SBC (IY+d) | |||
9F | SBC A | |||
98 | SBC B | |||
99 | SBC C | |||
9A | SBC D | |||
9B | SBC E | |||
9C | SBC H | |||
9D | SBC L | |||
DE n | SBC L | |||
ED 42 | SBC HL,BC | |||
ED 52 | SBC HL,DE | |||
ED 62 | SBC HL,HL | |||
ED 72 | SBC HL,SP |
32. SET-Befehle |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
37 | SCF | |||
CB C6 | SET 0,(HL) | |||
DD CB d C6 | SET 0,(IX+d) | |||
FD CB d C6 | SET 0,(IY+d) | |||
CB C7 | SET 0,A | |||
CB C0 | SET 0,B | |||
CB C1 | SET 0,C | |||
CB C2 | SET 0,D | |||
CB C3 | SET 0,E | |||
CB C4 | SET 0,H | |||
CB C5 | SET 0,L | |||
CB CE | SET 1,(HL) | |||
DD CB d CE | SET 1,(IX+d) | |||
FD CB d CE | SET 1,(IY+d) | |||
CB CF | SET 1,A | |||
CB C8 | SET 1,B | |||
CB C9 | SET 1,C | |||
CB CA | SET 1,D | |||
CB CB | SET 1,E | |||
CB CC | SET 1,H | |||
CB CD | SET 1,L | |||
CB D6 | SET 2,(HL) | |||
DD CB d D6 | SET 2,(IX+d) | |||
FD CB d D6 | SET 2,(IY+d) | |||
CB D7 | SET 2,A | |||
CB D0 | SET 2,B | |||
CB D1 | SET 2,C | |||
CB D2 | SET 2,D | |||
CB D3 | SET 2,E | |||
CB D4 | SET 2,H | |||
CB D5 | SET 2,L | |||
CB DE | SET 3,(HL) | |||
DD CB d DE | SET 3,(IX+d) | |||
FD CB d DE | SET 3,(IY+d) | |||
CB DF | SET 3,A | |||
CB D8 | SET 3,B | |||
CB D9 | SET 3,C | |||
CB DA | SET 3,D | |||
CB DB | SET 3,E | |||
CB DC | SET 3,H | |||
CB DD | SET 3,L | |||
CB E6 | SET 4,(HL) | |||
DD CB d E6 | SET 4,(IX+d) | |||
FD CB d E6 | SET 4,(IY+d) | |||
CB E7 | SET 4,A | |||
CB E0 | SET 4,B | |||
CB E1 | SET 4,C | |||
CB E2 | SET 4,D | |||
CB E3 | SET 4,E | |||
CB E4 | SET 4,H | |||
CB E5 | SET 5,L | |||
CB EE | SET 5,(HL) | |||
DD CB d EE | SET 5,(IX+d) | |||
FD CB d EE | SET 5,(IY+d) | |||
CB EF | SET 5,A | |||
CB E8 | SET 5,B | |||
CB E9 | SET 5,C | |||
CB EA | SET 5,D | |||
CB EB | SET 5,E | |||
CB EC | SET 5,H | |||
CB ED | SET 5,L | |||
CB F6 | SET 6,(HL) | |||
DD CB d F6 | SET 6,(IX+d) | |||
FD CB d F6 | SET 6,(IY+d) | |||
CB F7 | SET 6,A | |||
CB F0 | SET 6,B | |||
CB F1 | SET 6,C | |||
CB F2 | SET 6,D | |||
CB F3 | SET 6,E | |||
CB F4 | SET 6,H | |||
CB F5 | SET 6,L | |||
CB FE | SET 7,(HL) | |||
DD CB d FE | SET 7,(IX+d) | |||
FD CB d FE | SET 7,(IY+d) | |||
CB FF | SET 7,A | |||
CB F8 | SET 7,B | |||
CB F9 | SET 7,C | |||
CB FA | SET 7,D | |||
CB FB | SET 7,E | |||
CB FC | SET 7,H | |||
CB FD | SET 7,L |
33. Shift-Befehle |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
CB 26 | SLA (HL) | |||
DD CB d 26 | SLA (IX+d) | |||
FD CB d 26 | SLA (IY+d) | |||
CB 27 | SLA A | |||
CB 20 | SLA B | |||
CB 21 | SLA C | |||
CB 22 | SLA D | |||
CB 23 | SLA E | |||
CB 24 | SLA H | |||
CB 25 | SLA L | |||
CB 2E | SRA (HL) | |||
DD CB d 2E | SRA (IX+d) | |||
FD CB d 2E | SRA (IY+d) | |||
CB 2F | SRA A | |||
CB 28 | SRA B | |||
CB 29 | SRA C | |||
CB 2A | SRA D | |||
CB 2B | SRA E | |||
CB 2C | SRA H | |||
CB 2D | SRA L | |||
CB 3E | SRL (HL) | |||
DD CB d 3E | SRL (IX+d) | |||
FD CB d 3E | SRL (IY+d) | |||
CB 3F | SRL A | |||
CB 38 | SRL B | |||
CB 39 | SRL C | |||
CB 3A | SRL D | |||
CB 3B | SRL E | |||
CB 3C | SRL H | |||
CB 3D | SRL L |
34. Subtraktions-Befehle |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
96 | SUB (HL) | |||
DD 96 d | SUB (IX+d) | |||
FD 96 d | SUB (IY+d) | |||
97 | SUB A | |||
90 | SUB B | |||
91 | SUB C | |||
92 | SUB D | |||
93 | SUB E | |||
94 | SUB H | |||
95 | SUB L | |||
D6 n | SUB n |
35. XOR-Befehle |
![]() |
![]() |
![]() |
![]() |
Mehrfaches Einlesen externer Gerätekanäle wird hiermit ermöglicht. So kann eine Blockfolge von Meßwerten bereitgestellt werden.. Flag-Wirkung hier einzusehen |
HEX-Code | Mnemonik | Beschreibung | Funktionsbeschreibung | Bemerkungen |
AE | XOR (HL) | Logical XOR (HL) - Accumulator | ||
DD AE | XOR (IX+d) | |||
FD AE | XOR (IY+d) | |||
AF | XOR A | |||
A8 | XOR B | |||
A9 | XOR C | |||
AA | XOR D | |||
AB | XOR E | |||
AC | XOR H | |||
AD | XOR L | |||
EE n | XOR n |
![]() zur Hauptseite |
© Samuel-von-Pufendorf-Gymnasium Flöha | © Frank Rost im Oktober 2000 |
... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehmen ;-) „Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“ Diddi Hallervorden, dt. Komiker und Kabarettist |