Академический Документы
Профессиональный Документы
Культура Документы
Instrucciones de 16-bits
OPCODE
LD
HL,(16-bits)
LD
(16-bits), HL
LD
SP, HL
JP
(HL)
5A
UNIDAD 5
PARTE
PROGRAMANDO EN EL
ENSAMBLADOR DEL Z80
Otoo 2011
Microprocesadores
Ejemplo
Condiciones Inciales
LD HL,(2050H)
EX DE,HL
LD (2050H),HL
85
6F
2050
3F
00
00
2051
42
85
6F
2050
3F
42
3F
2051
42
42
3F
2050
3F
85
6F
2051
42
42
3F
2050
6F
85
6F
2051
85
OPCODE OPERANDO
ADC
ADC
ADC
ADC
SBC
SBC
SBC
SBC
DESCRIPCION
A,r
A, 8-bits
A, (HL)
A, (IX+d)
A,r
A, 8-bits
A, (HL)
A, (IX+d)
27
93
2050
XX
31
82
2051
XX
93H (A)
LD A,C
ADD A,E
93
XX
15
CY =1
LD L,A
LD A,D
ADC A,B
15
1H CY
CY =1
31H (A)
LD
LD
59
15
2050
15 H
59
CY =0
2051
59 H
31
+ 82H (E)
115H
+ 27H (B)
59H
H,A
(2050H),HL
08/11/2011
Suma de 16-bits
OPCODE
Suma de 16-bits
OPERANDO DESCRIPCION
ADD
HL,BC
ADD
HL,DE
ADD
HL,HL
ADD
HL,SP
Ejemplo
LD
ADD
LD
LD
ADC
LD
LD
A,C
A,E
L,A
A,D
A,B
H,A
(2050H),HL
SLA
SLA
SLA
SLA
SLA
SLA
SLA
SLA
H
H
H
H
L
L
L
L
EX HL,BC
ADD HL,DE
LD
(2050H),HL
HL
ADD HL,HL
HL
ADD HL,HL
HL
ADD HL,HL
HL
Subrutina ADBYTE
XOR
NEXT:
LD
A,(DE)
ADC
A,(HL)
LD
(HL),A
INC
HL
INC
DE
DEC
JR
NZ, NEXT
Operando
1 apuntado por HL
Operando 2 apuntado por DE
El tamao del operando en bytes en B
RET
Programa Principal
Multiplicacion Binaria
MAIN:
NEXT:
LD
SP, STACK
LD
HL, BUFF1
LD
DE, BUFF2
LD
B,04H
CALL
ADBYTE
; Realiza la suma
HALT
; Inicializa apuntadores
(111 1)
111
Paso 2:
(111 0)
000
Paso 3:
(111 1)
+ 111
100011
08/11/2011
Subrutina MLTPLY
MLTPLY:
NEXT:
A, D
; Copia el operando 2 en A
LD
D,0
LD
HL,0
; Limpia HL
LD
B,08H
; Inicializa el contador a 8
RRA
JR
NC, NOADD
ADD
HL,DE
DE,HL
NOADD: EX
ADD
HL, HL
EX
DE,HL
DEC
; Decrementa el contador
JR
NZ, NEXT
RET
Programa Principal
MAIN:
NEXT:
LD
SP, STACK
LD
HL, (BUF1)
EX
DE, HL
; Copialos en DE
CALL
MLTPLY
LD
(OUTBUF),HL
HALT
; termina