Table des instruction Z80, opcodes et timings
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| ADC A,H | #8C | 1 |
| ADC A,L | #8D | 1 |
| ADC A,D | #8A | 1 |
| ADC A,E | #8B | 1 |
| ADC A,B | #88 | 1 |
| ADC A,C | #89 | 1 |
| ADC A,(HL) | #8E | 2 |
| ADC A,(IX+disp) | #DD,#8E,disp | 5 |
| ADC A,(IY+disp) | #FD,#8E,disp | 5 |
| ADC A,data8 | #CE,data8 | 2 |
| ADC HL,HL | #ED,#6A | 4 |
| ADC HL,DE | #ED,#5A | 4 |
| ADC HL,BC | #ED,#4A | 4 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| ADD A,(HL) | #86 | 2 |
| ADD A,(IX+disp) | #DD,#86,disp | 5 |
| ADD A,(IY+disp) | #FD,#86,disp | 5 |
| ADD A,data8 | #C6,data8 | 2 |
| ADD A,A | #87 | 1 |
| ADD A,B | #80 | 1 |
| ADD A,C | #81 | 1 |
| ADD A,D | #82 | 1 |
| ADD A,E | #83 | 1 |
| ADD A,H | #84 | 1 |
| ADD A,L | #85 | 1 |
| ADD HL,BC | #09 | 3 |
| ADD HL,DE | #19 | 3 |
| ADD HL,HL | #29 | 3 |
| ADD HL,SP | #39 | 3 |
| ADD IX,BC | #DD,#09 | 4 |
| ADD IX,DE | #DD,#19 | 4 |
| ADD IX,IX | #DD,#29 | 4 |
| ADD IX,SP | #DD,#39 | 4 |
| ADD IY,BC | #FD,#09 | 4 |
| ADD IY,DE | #FD,#19 | 4 |
| ADD IY,IY | #FD,#29 | 4 |
| ADD IY,SP | #FD,#39 | 4 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| AND data8 | #E6,data8 | 2 |
| AND B | #A0 | 1 |
| AND C | #A1 | 1 |
| AND D | #A2 | 1 |
| AND E | #A3 | 1 |
| AND H | #A4 | 1 |
| AND L | #A5 | 1 |
| AND (HL) | #A6 | 2 |
| AND A | #A7 | 1 |
| AND (IX+disp) | #DD,#A6,disp | 5 |
| AND (IY+disp) | #FD,#A6,disp | 5 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| BIT 0,(HL) | #CB,#46 | 3 |
| BIT 1,(HL) | #CB,#4E | 3 |
| BIT 2,(HL) | #CB,#56 | 3 |
| BIT 3,(HL) | #CB,#5E | 3 |
| BIT 4,(HL) | #CB,#66 | 3 |
| BIT 5,(HL) | #CB,#6E | 3 |
| BIT 6,(HL) | #CB,#76 | 3 |
| BIT 7,(HL) | #CB,#7E | 3 |
| BIT 0,A | #CB,#47 | 2 |
| BIT 1,A | #CB,#4F | 2 |
| BIT 2,A | #CB,#57 | 2 |
| BIT 3,A | #CB,#5F | 2 |
| BIT 4,A | #CB,#67 | 2 |
| BIT 5,A | #CB,#6F | 2 |
| BIT 6,A | #CB,#77 | 2 |
| BIT 7,A | #CB,#7F | 2 |
| BIT 0,H | #CB,#44 | 2 |
| BIT 1,H | #CB,#4C | 2 |
| BIT 2,H | #CB,#54 | 2 |
| BIT 3,H | #CB,#5C | 2 |
| BIT 4,H | #CB,#64 | 2 |
| BIT 5,H | #CB,#6C | 2 |
| BIT 6,H | #CB,#74 | 2 |
| BIT 7,H | #CB,#7C | 2 |
| BIT 0,L | #CB,#45 | 2 |
| BIT 1,L | #CB,#4D | 2 |
| BIT 2,L | #CB,#55 | 2 |
| BIT 3,L | #CB,#5D | 2 |
| BIT 4,L | #CB,#65 | 2 |
| BIT 5,L | #CB,#6D | 2 |
| BIT 6,L | #CB,#75 | 2 |
| BIT 7,L | #CB,#7D | 2 |
| BIT 0,D | #CB,#42 | 2 |
| BIT 1,D | #CB,#4A | 2 |
| BIT 2,D | #CB,#52 | 2 |
| BIT 3,D | #CB,#5A | 2 |
| BIT 4,D | #CB,#62 | 2 |
| BIT 5,D | #CB,#6A | 2 |
| BIT 6,D | #CB,#72 | 2 |
| BIT 7,D | #CB,#7A | 2 |
| BIT 0,E | #CB,#43 | 2 |
| BIT 1,E | #CB,#4B | 2 |
| BIT 2,E | #CB,#53 | 2 |
| BIT 3,E | #CB,#5B | 2 |
| BIT 4,E | #CB,#63 | 2 |
| BIT 5,E | #CB,#6B | 2 |
| BIT 6,E | #CB,#73 | 2 |
| BIT 7,E | #CB,#7B | 2 |
| BIT 0,B | #CB,#40 | 2 |
| BIT 1,B | #CB,#48 | 2 |
| BIT 2,B | #CB,#50 | 2 |
| BIT 3,B | #CB,#58 | 2 |
| BIT 4,B | #CB,#60 | 2 |
| BIT 5,B | #CB,#68 | 2 |
| BIT 6,B | #CB,#70 | 2 |
| BIT 7,B | #CB,#78 | 2 |
| BIT 0,C | #CB,#41 | 2 |
| BIT 1,C | #CB,#49 | 2 |
| BIT 2,C | #CB,#51 | 2 |
| BIT 3,C | #CB,#59 | 2 |
| BIT 4,C | #CB,#61 | 2 |
| BIT 5,C | #CB,#69 | 2 |
| BIT 6,C | #CB,#71 | 2 |
| BIT 7,C | #CB,#79 | 2 |
| BIT 0,(IX+disp) | #DD,#CB,disp,#46 | 6 |
| BIT 1,(IX+disp) | #DD,#CB,disp,#4E | 6 |
| BIT 2,(IX+disp) | #DD,#CB,disp,#56 | 6 |
| BIT 3,(IX+disp) | #DD,#CB,disp,#5E | 6 |
| BIT 4,(IX+disp) | #DD,#CB,disp,#66 | 6 |
| BIT 5,(IX+disp) | #DD,#CB,disp,#6E | 6 |
| BIT 6,(IX+disp) | #DD,#CB,disp,#76 | 6 |
| BIT 7,(IX+disp) | #DD,#CB,disp,#7E | 6 |
| BIT 0,(IY+disp) | #FD,#CB,disp,#46 | 6 |
| BIT 1,(IY+disp) | #FD,#CB,disp,#4E | 6 |
| BIT 2,(IY+disp) | #FD,#CB,disp,#56 | 6 |
| BIT 3,(IY+disp) | #FD,#CB,disp,#5E | 6 |
| BIT 4,(IY+disp) | #FD,#CB,disp,#66 | 6 |
| BIT 5,(IY+disp) | #FD,#CB,disp,#6E | 6 |
| BIT 6,(IY+disp) | #FD,#CB,disp,#76 | 6 |
| BIT 7,(IY+disp) | #FD,#CB,disp,#7E | 6 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| CALL adr | #CD,ll,hh | 5 |
| CALL C,adr | #DC,ll,hh | nc=3 ; c=5 |
| CALL NC,adr | #D4,ll,hh | nc=3 ; c=5 |
| CALL Z,adr | #CC,ll,hh | nc=3 ; c=5 |
| CALL NZ,adr | #C4,ll,hh | nc=3 ; c=5 |
| CALL M,adr | #FC,ll,hh | nc=3 ; c=5 |
| CALL P,adr | #F4,ll,hh | nc=3 ; c=5 |
| CALL PE,adr | #EC,ll,hh | nc=3 ; c=5 |
| CALL PO,adr | #E4,ll,hh | nc=3 ; c=5 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| CCF | #3F | 1 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| CP data8 | #FE,data8 | 2 |
| CP A | #BF | 1 |
| CP H | #BC | 1 |
| CP L | #BD | 1 |
| CP D | #BA | 1 |
| CP E | #BA | 1 |
| CP B | #B8 | 1 |
| CP C | #B9 | 1 |
| CP (HL) | #BE | 2 |
| CP (IX+disp) | #DD,#BE,disp | 5 |
| CP (IY+disp) | #FD,#BE,disp | 5 |
| CPD | #ED,#A9 | 4 |
| CPDR | #ED,#B9 | BC-1=0 : 5, BC-1<>0 : 6 |
| CPI | #ED,#A1 | 4 |
| CPIR | #ED,#B1 | BC-1=0 : 5, BC-1<>0 : 6 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| CPL | #2F | 1 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| DAA | #27 | 1 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| DEC A | #3D | 1 |
| DEC HL | #2B | 2 |
| DEC H | #25 | 1 |
| DEC L | #2D | 1 |
| DEC DE | #1B | 2 |
| DEC D | #15 | 1 |
| DEC E | #1D | 1 |
| DEC BC | #0B | 2 |
| DEC B | #05 | 1 |
| DEC C | #0D | 1 |
| DEC IX | #DD,#2B | 3 |
| DEC IY | #FD,#2B | 3 |
| DEC SP | #3B | 2 |
| DEC (HL) | #35 | 3 |
| DEC (IX+disp) | #DD,#35,disp | 6 |
| DEC (IY+disp) | #FD,#35,disp | 6 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| DI | #F3 | 1 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| DJNZ adr | #10,disp | b-1=0 : 3, b-1<>0 : 4 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| EI | #FB | 1 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| EX DE,HL | #EB | 1 |
| EX AF,AF' | #08 | 1 |
| EXX | #D9 | 1 |
| EX (SP),HL | #E3 | 6 |
| EX (SP),IX | #DD,#E3 | 7 |
| EX (SP),IY | #FD,#E3 | 7 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| HALT | #76 | / |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| IM 0 | #ED,#46 | 2 |
| IM 1 | #ED,#56 | 2 |
| IM 2 | #ED,#5E | 2 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| IN A,(port) | #DB,data8 | 1 |
| IN A,(C) | #ED,#78 | 4 |
| IN B,(C) | #ED,#40 | 2 |
| IN C,(C) | #ED,#48 | 2 |
| IN D,(C) | #ED,#50 | 2 |
| IN E,(C) | #ED,#58 | 2 |
| IN H,(C) | #ED,#60 | 2 |
| IN L,(C) | #ED,#68 | 2 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| INC (HL) | #34 | 3 |
| INC A | #3C | 1 |
| INC HL | #23 | 2 |
| INC H | #24 | 1 |
| INC L | #2C | 1 |
| INC DE | #13 | 2 |
| INC D | #14 | 1 |
| INC E | #1C | 1 |
| INC BC | #03 | 2 |
| INC B | #04 | 1 |
| INC C | #0C | 1 |
| INC IX | #DD,#23 | 3 |
| INC IY | #FD,#23 | 3 |
| INC SP | #33 | 2 |
| INC (IX+disp) | #DD,#34,disp | 6 |
| INC (IY+disp) | #FD,#34,disp | 6 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| IND | #ED,#AA | 5 |
| INDR | #ED,#8A | BC-1=0 : 5 , BC-1<>0 : 6 |
| INI | #ED,#A2 | 5 |
| INIR | #ED,#B2 | BC-1=0 : 5 , BC-1<>0 : 6 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| JP adr | #C3,ll,hh | 3 |
| JP C,adr | #DA,ll,hh | 3 |
| JP NC,adr | #D2,ll,hh | 3 |
| JP Z,adr | #CA,ll,hh | 3 |
| JP NZ,adr | #C2,ll,hh | 3 |
| JP P,adr | #F2,ll,hh | 3 |
| JP PE,adr | #EA,ll,hh | 3 |
| JP PO,adr | #E2,ll,hh | 3 |
| JP H,adr | #FA,ll,hh | 3 |
| JP (HL) | #E9 | 1 |
| JP IX | #DD,#E9 | 2 |
| JP IY | #FD,#E9 | 2 |
| Instruction | Opcode(s) | Durée (NOPs) |
|---|---|---|
| JR adr | #18,disp | 3 |
| JR C,adr | #38,disp | NC : 2 , C : 3 |
| JR NC,adr | #30,disp | C : 2 , NC : 3 |
| JR Z,adr | #28,disp | NZ : 2 , Z : 3 |
| JR NZ,adr | #20,disp | Z : 2 , NZ : 3 |