! Instruction !! Opcode !! Hexcode !! NOPs !! Cycles !! M-Cycle Sequence !! S !! Z !! 5 !! H !! 3 !! P !! N !! C !! Effect !! Description
|-
| ldir ldi || 10110000 ED 10100000 || ED B0 A0 || 6/5 || 21/16 (4,4,3,5,5)/(4,4,3,5) || M1, M1, MR, MW, INT(2)(, INT(5)) || rowspan=4|- || rowspan=4|- || rowspan=4|X || rowspan=4|0 || rowspan=4|X || rowspan=4|C || rowspan=4|0 || rowspan=4|- || lditmp := (hl), (de) := tmp, de += 1, hl += 1, if bc <br> 0 then pc bc -= 2 1, f5 := [tmp + a].1, f3 := [tmp + a].3 || rowspan=4|Block Load
|-
| lddr ldd || 10111000 ED 10101000 || ED B8 A8 || 6/5 || 21/16 (4,4,3,5,5)/(4,4,3,5) || M1, M1, MR, MW, INT(2)|| tmp := (hl), INT(5de)) || ldd:= tmp, de -= 1, hl -= 1, if bc <br> 0 then pc bc -= 21, f5 := [tmp + a].1, f3 := [tmp + a].3
|-
| ldi ldir || 10100000 ED 10110000 || ED A0 B0 || 6/5 || 21/16 (4,4,3,5,5)/(4,4,3,5) || M1, M1, MR, MW, INT(2) || tmp := (hl), INT(de5) := tmp, de += 1, hl += 1) || ldi,if bc <> 0 then pc -= 1, f5 := [tmp + a].1, f3 := [tmp + a].32
|-
| ldd lddr || 10101000 ED 10111000 || ED A8 B8 || 6/5 || 21/16 (4,4,3,5,5)/(4,4,3,5) || M1, M1, MR, MW, INT(2) || tmp := (hl), INT(de5) := tmp) || ldd, de -= 1, hl -= 1,if bc <> 0 then pc -= 1, f5 := [tmp + a].1, f3 := [tmp + a].32
|-
| cpir cpi || 10110001 ED 10100001 || ED B1 A1 || 6/4 || 21/16 (4,4,3,5,5)/(4,4,3,5) || M1, M1, MR, INT(5)(, INT(5)) || rowspan=4|+ || rowspan=4|+ || rowspan=4|X || rowspan=4|+ || rowspan=4|X || rowspan=4|C || rowspan=4|1 || rowspan=4|- || cpitmp := a - (hl) => flags, if bc -= 1, hl += 1, <br> 0 and nz then pc f5 := [tmp -hf].1, f3 = 2 [tmp - hf].3 || rowspan=4| Block Compare
|-
| cpdr cpd || 10111001 ED 10101001 || ED B9 A9 || 6/4 || 21/16 (4,4,3,5,5)/(4,4,3,5) || M1, M1, MR, INT(5)|| tmp := a - (, INT(5hl)) || cpd=> flags, if bc -= 1, hl -= 1, <br> 0 and nz then pc f5 := [tmp -hf].1, f3 = 2[tmp - hf].3
|-
| cpi cpir || 10100001 ED 10110001 || ED A1 B1 || 6/4 || 21/16 (4,4,3,5,5)/(4,4,3,5) || M1, M1, MR, INT(5) || tmp := a - (hl, INT(5) => flags) || cpi, if bc <> 0 and nz then pc -= 1, hl += 1,f5 := [tmp - hf].1, f3 = [tmp - hf].32
|-
| cpd cpdr || 10101001 ED 10111001 || ED A9 B9 || 6/4 || 21/16 (4,4,3,5,5)/(4,4,3,5) || M1, M1, MR, INT(5) || tmp := a - (hl, INT(5) => flags) || cpd, if bc <> 0 and nz then pc -= 1, hl -= 1,f5 := [tmp - hf].1, f3 = [tmp - hf].32
|-
| inir ini || 10110010 ED 10100010 || ED B2 A2 || 6/5 || 21/16 (4,5,4,3,5)/(4,5,4,3) || M1, M1, INT(1), IOR, MW(, INT(5)) || rowspan=4|+ || rowspan=4|+ || rowspan=4|+ || rowspan=4|X || rowspan=4|+ || rowspan=4|X || rowspan=4|X || rowspan=4|X || initmp := ((c)), (hl) := tmp, hl += 1, if b <br> 0 then pc b -= 2 1 => flags, nf := tmp.7, <br> tmp2 := tmp + [[c + 1] and 0xff], <br> pf := parity of [[tmp2 and 0x07] xor b], <br> hf := cf := tmp2 > 255 || rowspan=4|Block I/O Input
|-
| indr ind || 10111010 ED 10101010 || ED BA AA || 6/5 || 21/16 (4,5,4,3,5)/(4,5,4,3) || M1, M1, INT(1), IOR, MW|| tmp := (, INT(5c)) || ind, if (hl) := tmp, hl -= 1, <br> b -= 1 => flags, nf := tmp.7, <br> 0 then pc tmp2 = tmp + [[c -1] and 0xff], <br> pf := 2parity of [[tmp2 and 0x07] xor b], <br> hf := cf := tmp2 > 255
|-
| ini inir || 10100010 ED 10110010 || ED A2 B2 || 6/5 || 21/16 (4,5,4,3,5)/(4,5,4,3) || M1, M1, INT(1), IOR, MW || tmp := (, INT(c5))|| ini, (hl) := tmp, hl += 1,if b <> 0 then pc -= 1 => flags, nf := tmp.7, tmp2 := tmp + [[c + 1] and 0xff], pf := parity of [[tmp2 and 0x07] xor b], hf := cf := tmp2 > 2552
|-
| ind indr || 10101010 ED 10111010 || ED AA BA || 6/5 || 21/16 (4,5,4,3,5)/(4,5,4,3) || M1, M1, INT(1), IOR, MW || tmp := (, INT(c5))|| ind, (hl) := tmp, hl -= 1,if b -= 1 =<> flags, nf := tmp.7, tmp2 = tmp + [[c 0 then pc - 1] and 0xff], pf := parity of [[tmp2 and 0x07] xor b], hf := cf := tmp2 > 2552
|-
| otir outi || 10110011 ED 10100011 || ED B3 A3 || 6/5 || 21/16 (4,5,3,4,5)/(4,5,3,4) || M1, M1, INT(1), MR, IOW(, INT(5)) || rowspan=4|+ || rowspan=4|+ || rowspan=4|+ || rowspan=4|X || rowspan=4|+ || rowspan=4|X || rowspan=4|X || rowspan=4|X || outitmp := (hl), ((c)) := tmp, hl += 1, if b <br> 0 then pc b -= 2 1 => flags, nf := tmp.7, tmp2 = tmp + l, <br> pf := parity of [[tmp2 and 0x07] xor b], <br> hf := cf := tmp2 > 255 || rowspan=4|Block I/O Output
|-
| otdr outd || 10111011 ED 10101011 || ED BB AB || 6/5 || 21/16 (4,5,3,4,5)/(4,5,3,4) || M1, M1, INT(1), MR, IOW|| tmp := (hl), INT(5(c)) || outd:= tmp, hl -= 1, if b <br> 0 then pc b -= 21 => flags, nf := tmp.7, tmp2 = tmp + l, <br> pf := parity of [[tmp2 and 0x07] xor b], <br> hf := cf := tmp2 > 255
|-
| outi otir || 10100011 ED 10110011 || ED A3 B3 || 6/5 || 21/16 (4,5,3,4,5)/(4,5,3,4) || M1, M1, INT(1), MR, IOW || tmp := (hl), INT((c5)) := tmp|| outi, hl += 1,if b <> 0 then pc -= 1 => flags, nf := tmp.7, tmp2 = tmp + l, pf := parity of [[tmp2 and 0x07] xor b], hf := cf := tmp2 > 2552
|-
| outd otdr || 10101011 ED 10111011 || ED AB BB || 6/5 || 21/16 (4,5,3,4,5)/(4,5,3,4) || M1, M1, INT(1), MR, IOW || tmp := (hl), INT((c5)) := tmp|| outd, hl -= 1,if b <> 0 then pc -= 1 => flags, nf := tmp.7, tmp2 = tmp + l, pf := parity of [[tmp2 and 0x07] xor b], hf := cf := tmp2 > 2552
|}