Anexa 4

Transferuri pe 8 biţi
Transferuri pe 16 biţi
Schimburi între registre, transfer de blocuri, căutări
Operaţii aritmetice şi logice pe 8 biţi
Operaţii aritmetice generale şi operaţii de comandă
Operaţii aritmetice pe 16 biţi
Prelucrări pe bit
Salturi
Apeluri de subrutine, reveniri, instrucţiuni de restart
Operaţii de intrare/ ieşire

Transferuri pe 8 biţi

Mnemonica Z80

Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

LD r, r,

r ¬ r,

01 r r,

             

LD r, n

r ¬ n

00 r 110

n

             

LD r, (HL)

r ¬ (HL)

01 r 110

             

LD r, (IX+d)

r ¬ (IX+d)

11011101

01 r 101

d

DD

           

LD r, (IY+d)

r ¬ (IY+d)

11111101

01 r 110

d

FD

           

LD (HL), r

(HL) ¬ r

01110 r

             

LD (IX+d), r

(IX+d) ¬ r

11011101

01110 r

d

DD

           

LD (IY+d), r

(IY+d) ¬ r

11111101

01110 r

d

FD

           

LD (HL), n

(HL) ¬ n

00110110

n

36

           

LD (IX+d), n

(IX+d) ¬ n

11011101

00110110

d

n

DD

36

           

LD (IY+d), n

(IY+d) ¬ n

11111101

00110110

d

n

FD

36

           

LD A, (BC)

A ¬ (BC)

00001010

0A

           

LD A, (DE)

A ¬ (DE)

00011010

1A

           

LD A, (nn)

A ¬ (nn)

00111010

n

n

3A

           

LD (BC), A

(BC) ¬ A

00000010

02

           

LD (DE), A

(DE) ¬ A

00010010

12

           

LD (nn), A

(nn) ¬ A

00110010

n

n

32

           

LD A, I

A ¬ I

11101101

01010111

ED

57

­

­

0

IFF

0

 

LD A, R

A ¬ R

11101101

01011111

ED

5F

­

­

0

IFF

0

 

LD I, A

I ¬ A

11101101

01000111

ED

47

           

LD R, A

R ¬ A

11101101

01001111

ED

4F

           

 

 

 

Transferuri pe 16 biţi

Mnemonica Z80

Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

LD dd, nn

dd ¬ nn

00dd0001

n

n

             

LD IX, nn

IX ¬ nn

11011101

00100001

n

n

DD

21

           

LD IY, nn

IY ¬ nn

11111101

00100001

n

n

FD

21

           

LD HL, (nn)

H ¬ (nn+1)

L ¬ (nn)

00101010

n

n

2A

           

LD dd, (nn)

ddH ¬ (nn+1)

ddL ¬ (nn)

11101101

01dd1011

n

n

ED

           

LD IX, (nn)

IXH ¬ (nn+1)

IXL ¬ (nn)

11011101

00101010

n

n

DD

2A

           

LD IY, (nn)

IYH ¬ (nn+1)

IYL ¬ (nn)

11111101

00101010

n

n

FD

2A

           

LD (nn), HL

(nn+1) ¬ H

(nn) ¬ L

00100010

n

n

22

           

LD (nn), dd

(nn+1) ¬ ddH

(nn) ¬ ddL

11101101

01dd0011

n

n

ED

           

LD (nn), IX

(nn+1) ¬ IXH

(nn) ¬ IXL

11011101

00100010

n

n

DD

22

           

LD (nn), IY

(nn+1) ¬ IYH

(nn) ¬ IYL

11111101

00100010

n

n

FD

22

           

LD SP, HL

SP ¬ HL

11111001

F9

           

LD SP, IX

SP ¬ IX

11011101

11111001

DD

F9

           

LD SP, IY

SP ¬ IY

11111101

11111001

FD

F9

           

PUSH qq

(SP-2) ¬ qqL

(SP-1) ¬ qqH

SP ¬ SP-2

11qq0101

             

PUSH IX

(SP-2) ¬ IXL

(SP-1) ¬ IXH

SP ¬ SP-2

11011101

11100101

DD

E5

           

PUSH IY

(SP-2) ¬ IYL

(SP-1) ¬ IYH

SP ¬ SP-2

11111101

11100101

FD

E5

           

POP qq

qqH ¬ (SP+1)

qqL ¬ SP

SP ¬ SP+2

11qq0001

             

POP IX

IXH ¬ (SP+1)

IXL ¬ SP

SP ¬ SP+2

11011101

11100001

DD

E1

           

POP IY

IYH ¬ (SP+1)

IYL ¬ SP

SP ¬ SP+2

11111101

11100001

FD

E1

           

 

 

 

Schimburi între registre, transfer de blocuri, căutări

Mnemonica Z80

Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

EX DE, HL

DE « HL

11101011

EB

           

EX AF, AF’

AF « AF’

00001000

08

           

EXX

BC « BC’

DE « DE’

HL « HL’

11011001

D9

           

EX (SP), HL

H « (SP+1)

L « (SP)

11100011

E3

           

EX (SP), IX

IXH « (SP+1)

IXL « (SP)

11011101

11100011

DD

E3

           

EX (SP), IY

IYH « (SP+1)

IYL « (SP)

11111101

11100011

FD

E3

           

LDI

(DE) ¬ (HL)

DE ¬ DE+1

HL ¬ HL+1

BC ¬ BC-1

11101101

10100000

ED

A0

   

0

­

0

 

LDIR

(DE) ¬ (HL)

DE ¬ DE+1

HL ¬ HL+1

BC ¬ BC-1

se repetă până când BC=0

11101101

10110000

ED

B0

   

0

0

0

 

LDD

(DE) ¬ (HL)

DE ¬ DE-1

HL ¬ HL-1

BC ¬ BC-1

11101101

10101000

ED

A8

   

0

­

0

 

LDDR

(DE) ¬ (HL)

DE ¬ DE-1

HL ¬ HL-1

BC ¬ BC-1

se repetă până când BC=0

11101101

10111000

ED

B8

   

0

0

0

 

CPI

A - (HL)

HL ¬ HL+1

BC ¬ BC-1

11101101

10100001

ED

A1

­

­

­

­

1

 

CPIR

A - (HL)

HL ¬ HL+1

BC ¬ BC-1

se repetă până când A=(HL) sau BC=0

11101101

10110001

ED

B1

­

­

­

­

1

 

CPD

A - (HL)

HL ¬ HL-1

BC ¬ BC-1

11101101

10101001

ED

A9

­

­

­

­

1

 

CPIR

A - (HL)

HL ¬ HL-1

BC ¬ BC-1

se repetă până când A=(HL) sau BC=0

11101101

10111001

ED

B9

­

­

­

­

1

 

 

 

 

Operaţii aritmetice şi logice pe 8 biţi

Mnemonica Z80

Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

ADD A, r

A ¬ A+r

10000 r

 

­

­

­

V

0

­

ADD A, n

A ¬ A+n

11000110

n

C6

­

­

­

V

0

­

ADD A, (HL)

A ¬ A+(HL)

10000110

86

­

­

­

V

0

­

ADD A, (IX+d)

A ¬ A+(IX+d)

11011101

10000110

d

DD

86

­

­

­

V

0

­

ADD A, (IY+d)

A ¬ A+(IY+d)

11111101

10000110

d

FD

86

­

­

­

V

0

­

ADC A, r

A ¬ A+r+CY

10001 r

 

­

­

­

V

0

­

ADC A, n

A ¬ A+n+CY

11001110

n

CE

­

­

­

V

0

­

ADC A, (HL)

A ¬ A+(HL) +CY

10001110

8E

­

­

­

V

0

­

ADC A, (IX+d)

A ¬ A+(IX+d) +CY

11011101

10001110

d

DD

8E

­

­

­

V

0

­

ADC A, (IY+d)

A ¬ A+(IY+d) +CY

11111101

10001110

d

FD

8E

­

­

­

V

0

­

SUB r

A ¬ A-r

10010 r

 

­

­

­

V

1

­

SUB n

A ¬ A-n

11010110

n

D6

­

­

­

V

1

­

SUB (HL)

A ¬ A-(HL)

10010110

96

­

­

­

V

1

­

SUB (IX+d)

A ¬ A-(IX+d)

11011101

10010110

d

DD

96

­

­

­

V

1

­

SUB (IY+d)

A ¬ A-(IY+d)

11111101

10010110

d

FD

96

­

­

­

V

1

­

SBC A, r

A ¬ A-r-CY

10011 r

 

­

­

­

V

1

­

SBC A, n

A ¬ A-n-CY

11011110

n

DE

­

­

­

V

1

­

SBC A, (HL)

A ¬ A-(HL)

-CY

10011110

9E

­

­

­

V

1

­

SBC A, (IX+d)

A ¬ A-(IX+d) -CY

11011101

10011110

d

DD

9E

­

­

­

V

1

­

SBC A, (IY+d)

A ¬ A-(IY+d) -CY

11111101

10011110

d

FD

9E

­

­

­

V

1

­

AND r

A ¬ AŮr

10100 r

 

­

­

1

P

0

0

AND n

A ¬ AŮn

11100110

n

E6

­

­

1

P

0

0

AND (HL)

A ¬ AŮ (HL)

10100110

A6

­

­

1

P

0

0

AND (IX+d)

A ¬ AŮ (IX+d)

11011101

10100110

d

DD

A6

­

­

1

P

0

0

AND (IY+d)

A ¬ AŮ (IY+d)

11111101

10100110

d

FD

A6

­

­

1

P

0

0

OR r

A ¬ AÚr

10110 r

 

­

­

0

P

0

0

OR n

A ¬ AÚn

11110110

n

F6

­

­

0

P

0

0

OR (HL)

A ¬ AÚ (HL)

10110110

B6

­

­

0

P

0

0

OR (IX+d)

A ¬ AÚ (IX+d)

11011101

10110110

d

DD

B6

­

­

0

P

0

0

OR (IY+d)

A ¬ AÚ (IY+d)

11111101

10110110

d

FD

B6

­

­

0

P

0

0

XOR r

A ¬ AĹr

10101 r

 

­

­

0

P

0

0

XOR n

A ¬ AĹn

11101110

n

EE

­

­

0

P

0

0

XOR (HL)

A ¬ AĹ (HL)

10101110

AE

­

­

0

P

0

0

XOR (IX+d)

A ¬ AĹ (IX+d)

11011101

10101110

d

DD

AE

­

­

0

P

0

0

XOR (IY+d)

A ¬ AĹ (IY+d)

11111101

10101110

d

FD

AE

­

­

0

P

0

0

CP r

A - r

10111 r

 

­

­

­

V

1

­

CP n

A - n

11111110

n

FE

­

­

­

V

1

­

CP (HL)

A - (HL)

10111110

BE

­

­

­

V

1

­

CP (IX+d)

A - (IX+d)

11011101

10111110

d

DD

BE

­

­

­

V

1

­

CP (IY+d)

A - (IY+d)

11111101

10111110

d

FD

BE

­

­

­

V

1

­

INC r

r ¬ r+1

00 r 100

 

­

­

­

V

0

 

INC (HL)

(HL) ¬ (HL)+1

00110100

34

­

­

­

V

0

 

INC (IX+d)

(IX+d) ¬ (IX+d) + 1

11011101

00110100

d

DD

34

­

­

­

V

0

 

INC (IY+d)

(IY+d) ¬ (IY+d) + 1

11111101

00110100

d

FD

34

­

­

­

V

0

 

DEC r

r ¬ r-1

00 r 101

 

­

­

­

V

1

 

DEC (HL)

(HL) ¬ (HL)-1

00110101

35

­

­

­

V

1

 

DEC (IX+d)

(IX+d) ¬ (IX+d) - 1

11011101

00110101

d

DD

35

­

­

­

V

1

 

DEC (IY+d)

(IY+d) ¬ (IY+d) - 1

11111101

00110101

d

FD

35

­

­

­

V

1

 

 

 

 

Operaţii aritmetice generale şi operaţii de comandă

Mnemonica Z80

Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

DAA

Converteşte conţinutul lui A în format BCD după adunări sau scăderi cu operanzi BCD

00100111

27

­

­

­

P

 

­

CPL

A ¬ /A

00101111

2F

   

1

 

1

 

NEG

A ¬ 0 - A

11101101

01000100

ED

44

­

­

­

V

1

­

CCF

CY ¬ /CY

00111111

3F

   

x

 

0

­

SCF

CY ¬ 1

00110111

37

   

0

 

0

1

NOP

 

00000000

00

           

HALT

Oprire CPU

01110110

76

           

DI

IFF 1,2 ¬ 0

11110011

F3

           

EI

IFF 1,2 ¬ 0

11111011

FB

           

IM 0

Stabilire mod întreruperi 0

11101101

01000110

ED

46

           

IM 1

Stabilire mod întreruperi 1

11101101

01010110

ED

56

           

IM 2

Stabilire mod întreruperi 2

11101101

01011110

ED

5E

           

 

 

 

Operaţii aritmetice pe 16 biţi

Mnemonica Z80

Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

ADD HL, dd

HL ¬ HL+dd

00dd1001

     

x

 

0

­

ADC HL, dd

HL ¬ HL+dd +CY

11101101

01dd1010

ED

­

­

x

V

0

­

SBC HL, dd

HL ¬ HL-dd

-CY

11101101

01dd0010

ED

­

­

x

V

1

­

ADD IX, ss

IX ¬ IX+ss

11011101

01ss1001

DD

   

x

 

0

­

ADD IY, pp

IY ¬ IY+pp

11111101

00pp1001

FD

   

x

 

0

­

INC dd

dd ¬ dd+1

00dd0011

             

INC IX

IX ¬ IX+1

11011101

00100011

DD

23

           

INC IY

IY ¬ IY+1

11111101

00100011

FD

23

           

DEC dd

dd ¬ dd - 1

00dd1011

             

DEC IX

IX ¬ IX - 1

11011101

00101011

DD

2B

           

DEC IY

IY ¬ IY - 1

11111101

00101011

FD

2B

           

 

 

 

Operaţii aritmetice pe 16 biţi

Mnemonica Z80Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

RLCA

CY¬A7¬A0 ¬A7

00000111

07

   

0

 

0

­

RLA

CY¬A7¬A0 ¬CY

00010111

17

   

0

 

0

­

RRCA

 

00001111

0F

   

0

 

0

­

RRA

 

00011111

1F

   

0

 

0

­

RLC r

 

11001011

00000 r

CB

­

­

0

P

0

­

RLC (HL)

 

11001011

00000110

CB

06

­

­

0

P

0

­

RLC (IX+d)

 

11011101

11001011

d

00000110

DD

CB

06

­

­

0

P

0

­

RLC (IY+d)

 

11111101

11001011

d

00000110

FD

CB

06

­

­

0

P

0

­

RL r

 

11001011

00010 r

CB

­

­

0

P

0

­

RL (HL)

 

11001011

00010110

CB

16

­

­

0

P

0

­

RL (IX+d)

 

11011101

11001011

d

00010110

DD

CB

16

­

­

0

P

0

­

RL (IY+d)

 

11111101

11001011

d

00010110

FD

CB

16

­

­

0

P

0

­

RRC r

 

11001011

00001 r

CB

­

­

0

P

0

­

RRC (HL)

 

11001011

00001110

CB

0E

­

­

0

P

0

­

RRC (IX+d)

 

11011101

11001011

d

00001110

DD

CB

1E

­

­

0

P

0

­

RRC (IY+d)

 

11111101

11001011

d

00001110

FD

CB

1E

­

­

0

P

0

­

RR r

 

11001011

00011 r

CB

­

­

0

P

0

­

RR (HL)

 

11001011

00011110

CB

1E

­

­

0

P

0

­

RR (IX+d)

 

11011101

11001011

d

00011110

DD

CB

1E

­

­

0

P

0

­

RR (IY+d)

 

11111101

11001011

d

00011110

FD

CB

1E

­

­

0

P

0

­

SLA r

 

11001011

00100 r

CB

­

­

0

P

0

­

SLA (HL)

 

11001011

00100110

CB

26

­

­

0

P

0

­

SLA (IX+d)

 

11011101

11001011

d

00100110

DD

CB

26

­

­

0

P

0

­

SLA (IY+d)

 

11111101

11001011

d

00100110

FD

CB

26

­

­

0

P

0

­

SRA r

 

11001011

00101 r

CB

­

­

0

P

0

­

SRA (HL)

 

11001011

00101110

CB

2E

­

­

0

P

0

­

SRA (IX+d)

 

11011101

11001011

d

00101110

DD

CB

2E

­

­

0

P

0

­

SRA (IY+d)

 

11111101

11001011

d

00101110

FD

CB

2E

­

­

0

P

0

­

SRL r

 

11001011

00111 r

CB

­

­

0

P

0

­

SRL (HL)

 

11001011

00111110

CB

3E

­

­

0

P

0

­

SRL (IX+d)

 

11011101

11001011

d

00111110

DD

CB

3E

­

­

0

P

0

­

SRL (IY+d)

 

11111101

11001011

d

00111110

FD

CB

3E

­

­

0

P

0

­

RLD

 

11101101

01101111

ED

6F

­

­

0

P

0

 

RRD

 

11101101

01100111

ED

67

­

­

0

P

0

 

 

 

 

Prelucrări pe bit

Mnemonica Z80

Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

BIT b, r

Z ¬ /rb

11001011

01 b r

CB

x

­

1

x

0

 

BIT b, (HL)

Z ¬ /(HL)b

11001011

01 b 110

CB

x

­

1

x

0

 

BIT b, (IX+d)

Z ¬ /(IX+d)b

11011101

11001011

d

01 b 110

DD

CB

x

­

1

x

0

 

BIT b, (IY+d)

Z ¬ /(IY+d)b

11111101

11001011

d

01 b 110

FD

CB

x

­

1

x

0

 

SET b, r

rb ¬ 1

11001011

11 b r

CB

           

SET b, (HL)

(HL)b ¬ 1

11001011

11 b 110

CB

           

SET b, (IX+d)

(IX+d)b ¬ 1

11011101

11001011

d

11 b 110

DD

CB

           

SET b, (IY+d)

(IY+d)b ¬ 1

11111101

11001011

d

11 b 110

FD

CB

           

RES b, r

rb ¬ 0

11001011

10 b r

CB

           

RES b, (HL)

(HL)b ¬ 0

11001011

10 b 110

CB

           

RES b, (IX+d)

(IX+d)b ¬ 0

11011101

11001011

d

10 b 110

DD

CB

           

RES b, (IY+d)

(IY+d)b ¬ 0

11111101

11001011

d

10 b 110

FD

CB

           

 

 

 

Salturi

Mnemonica Z80

Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

JP nn

PC ¬ nn

11000011

n

n

C3

           

JP cc, nn

dacă cc

PC ¬ nn

altfel continuă

11 cc 010

n

n

             

JR e

PC ¬ PC+e

00011000

e - 2

18

           

JR C, e

dacă C = 1

PC ¬ PC+e

altfel continuă

00111000

e - 2

38

           

JR NC, e

dacă C = 0

PC ¬ PC+e

altfel continuă

00110000

e - 2

30

           

JR Z, e

dacă Z = 1

PC ¬ PC+e

altfel continuă

00101000

e - 2

28

           

JR NZ, e

dacă Z = 0

PC ¬ PC+e

altfel continuă

00100000

e – 2

20

           

JP (HL)

PC ¬ HL

11101001

E9

           

JP (IX)

PC ¬ IX

11011101

11101001

DD

E9

           

JP (IY)

PC ¬ IY

11111101

11101001

FD

E9

           

DJNZ e

B ¬ B - 1

dacă B <> 0

PC ¬ PC+e

altfel continuă

00010000

e - 2

10

           

 

 

 

Apeluri de subrutine, reveniri, instrucţiuni de restart

Mnemonica Z80

Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

CALL nn

(SP-1) ¬ PCH

(SP-2) ¬ PCL

PC ¬ nn

11001101

n

n

CD

           

CALL cc, nn

dacă cc=1

CALL nn

altfel continuă

11 cc 100

n

n

             

RET

PCH ¬ (SP)

PCL ¬ (SP+1)

11001001

C9

           

RET cc

dacă cc=1

RET

altfel continuă

11 cc 000

             

RETI

Revenire din întrerupere

11101101

01001101

ED

4D

           

RETN

Revenire din întrerupere nemascabilă

11101101

01000101

ED

45

           

RST p

(SP-1) ¬ PCH

(SP-2) ¬ PCL

PCH ¬ 0

PCL ¬ p

11 t 111

             

 

 

 

Operaţii de intrare/ ieşire

Mnemonica Z80

Descrierea

simbolică

Cod obiect

Indicatorii de condiţii

Binar

Hexa

S

Z

H

P/V

N

C

IN A, (n)

A ¬ (n)

11011011

n

DB

           

IN r, (C)

r ¬ (C)

11101101

01 r 000

ED

­

­

­

P

0

 

INI

(HL) ¬ (C)

B ¬ B - 1

HL ¬ HL + 1

11101101

10100010

ED

A2

x

­

x

x

­

x

INIR

(HL) ¬ (C)

B ¬ B - 1

HL ¬ HL + 1

se repetă până când B=0

11101101

10110010

ED

B2

x

1

x

x

­

x

IND

(HL) ¬ (C)

B ¬ B - 1

HL ¬ HL - 1

11101101

10101010

ED

AA

x

­

x

x

­

x

INDR

(HL) ¬ (C)

B ¬ B - 1

HL ¬ HL - 1

se repetă până când B=0

11101101

10110010

ED

BA

x

1

x

x

­

x

OUT (n), A

(n) ¬ A

11010011

n

D3

       

­

x

OUT (C), r

(C) ¬ r

11101101

01 r 001

ED

       

­

x

OUTI

(C) ¬ (HL)

B ¬ B - 1

HL ¬ HL + 1

11101101

10100011

ED

A3

x

­

x

x

­

x

OTIR

(C) ¬ (HL)

B ¬ B - 1

HL ¬ HL + 1

se repetă până când B=0

11101101

10110011

ED

B3

x

1

x

x

­

x

OUTD

(C) ¬ (HL)

B ¬ B - 1

HL ¬ HL - 1

11101101

10101011

ED

AB

x

­

x

x

­

x

OTDR

(C) ¬ (HL)

B ¬ B - 1

HL ¬ HL - 1

se repetă până când B=0

11101101

10110011

ED

BB

x

1

x

x

­

x

 

 

 

r, r’

Registru

 

b

Bit testat

000

B

000

0

001

C

001

1

010

D

010

2

011

E

011

3

100

H

100

4

101

L

101

5

111

A

110

6

   

111

7

 

dd, qq, ss, pp

Registre - dd

Registre - qq

Registre - ss

Registre - pp

00

BC

BC

BC

BC

01

DE

DE

DE

DE

10

HL

HL

IX

IY

11

SP

AF

SP

SP