Documente Academic
Documente Profesional
Documente Cultură
0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0
0x0f
0 1 2 3 4 5 6 7 8 9 a b c d e
0x0 NOP AJM LJM RR INC INC INC INC INC INC INC INC INC INC INC INC
0 P P
0x1 JBC ACA LCA CRR Dicie Dicie Dicie Dicie Dicie Dicie Dicie Dicie Dicie Dicie Dicie Dicie
0 LL LL mbre mbre mbre mbre mbre mbre mbre mbre mbre mbre mbre mbre
0x2 JB AJM RET RL Añad Añad Añad Añad Añad Añad Añad Añad Añad Añad Añad Añad
0 P ir ir ir ir ir ir ir ir ir ir ir ir
0x3 JNB ACA RETI RLC ADD ADD ADD ADD ADD ADD ADD ADD ADD ADD ADD ADD
0 LL C C C C C C C C C C C C
0x4 JC AJM ORL ORL ORL ORL ORL ORL ORL ORL ORL ORL ORL ORL ORL ORL
0 P
0x5 CPN ACA ANL ANL ANL ANL ANL ANL ANL ANL ANL ANL ANL ANL ANL ANL
0 LL
0x6 JZ AJM XRL XRL XRL XRL XRL XRL XRL XRL XRL XRL XRL XRL XRL XRL
0 P
0x9 MO ACA MO MO SUB SUB SUB SUB SUB SUB SUB SUB SUB SUB SUB SUB
0 V LL V VC B B B B B B B B B B B B
0X ANL ACA CPL CPL CJN CJN CJN CJN CJN CJN CJN CJN CJN CJN CJN CJN
B0 LL E E E E E E E E E E E E
CLR CLR
PUS AJM SWA XCII XCII XCII XCII XCII XCII XCII XCII XCII XCII XCII
0xc
H P P
0
0xD POP ACA SET SET DA DJN XCH XCH DJN DJN DJN DJN DJN DJN DJN DJN
0 LL B B Z D D Z Z Z Z Z Z Z Z
0X MO AJM MO MO CLR MO MO MO MO MO MO MO MO MO MO MO
E0 VX P VX VX V V V V V V V V V V V
Ope AC
raci AL
ón: L
Call
Blo
ck
Fun abso
ción luta
: dent
ro
de
2K
Dir
ecci
ón,
Sint
códi
axis
go
:
AC
AL
L
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
2
AC 0x1 Nin
AL 1 gun
L o
pa
ge
0
AC
AL
Nin
L 0x3 2
gun
pa 1
o
ge
1
AC
AL
Nin
L 0x5 2
gun
Pá 1
o
gin
a2
AC
AL
Nin
L 0x7 2
gun
Pá 1
o
gin
a3
AC
AL
Nin
L 0x9 2
gun
Pá 1
o
gin
a4
AC
AL
Nin
L 0x 2
gun
Pá B1
o
gin
a5
AC
AL
Nin
L 0x 2
gun
Pá D1
o
gin
a6
2
AC
AL
Nin
L 0x
gun
Pá F1
o
gin
a7
Dado que sólo 11 bits del contador de programa se ven afectados por ACALL, las
llamadas sólo se podrá hacer a las rutinas situadas en el mismo bloque 2k como el
primer byte que sigue ACALL.
AD
Ope
D,
raci
AD
ón:
DC
Aña
dir
acu
mul
ador
,
Fun
Aña
ción
dir
:
acu
mul
ador
con
Carr
y
AÑ
ADI
Sint
R A,
axis
ope
:
ran
do
AD
DC
A,
ope
ran
do
Ins Ins
tru tru
cci cci
one one
s s
AD AD
D DC
A, A,
# #
dat dat
os os
AÑ AD
AD DC
IR A,
A, ad
ad dr
dr IR
IR A
A M
M
AD
AD DC
D A,
A, @
@ R0
R0
AD
AD DC
D A,
A,
@
@
R1
R1
AD
AD
DC
D
A,
A,
R0
R0
AD
AD
DC
D
A,
A,
R1
R1
AD
AD
DC
D
A,
A,
R2
R2
AD
AD
DC
D
A,
A,
R3
R3
AD
AD
DC
D
A,
A,
R4
R4
AD
AD
DC
D
A,
A,
R5
R5
AD
AD
DC
D
A,
A,
R6
R6
AD
AD
DC
D
A,
A,
R7
R7
Descripción: Descripción: ADD y ADDC tanto, agregue el valor del operando con el
valor del acumulador, dejando el valor resultante en el acumulador. El operando valor
no se ve afectado. ADD y ADDC funcionan de forma idéntica, excepto que ADDC
añade el valor del operando, así como el valor de la bandera de acarreo Considerando
que la TDA no se le añade la bandera de acarreo al resultado.
El Carry auxiliar (AC) bit se establece si hay un acarreo de 3 bits. En otras palabras,
si el signo valor acumulado de las nibble bajo del acumulador, y operando (en el caso
de ADDC) la bandera de acarreo superior a 15 auxiliares de la bandera de Carry se
establece. De lo contrario, se borra la bandera Auxiliar Carry.
Ope
AJ
raci
MP
ón:
Salt
ar
abso
luta
Fun
dent
ción
ro
:
de
2K
Blo
ck
Sint Dir
axis ecci
: ón,
códi
go
AJ
MP
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
AJ
MP Nin
0x0 2
pa gun
1
ge o
0
AJ
MP Nin
0x2 2
pa gun
1
ge o
1
AJ
MP Nin
0x4 2
Pá gun
1
gin o
a2
AJ
MP Nin
0x6 2
Pá gun
1
gin o
a3
AJ
MP Nin
0x8 2
Pá gun
1
gin o
a4
AJ
MP Nin
0xa 2
Pá gun
1
gin o
a5
2
AJ 0x Nin
MP
Pá gun
C1
gin o
a6
AJ
MP Nin
0x 2
Pá gun
E1
gin o
a7
Dado que sólo 11 bits del contador de programa se ven afectados por AJMP, saltos sólo
se podrá hacer con el código ubicado dentro del mismo bloque 2k como el primer byte
que sigue AJMP.
Ope
AN
raci
L
ón:
AN
Fun
D
ción
bit a
:
bit
AN
L
ope
Sint
ran
axis
do1,
:
ope
ran
do2
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Ad
dr
IR
Nin
A 0x5 2
gun
M 2
o
AN
L,
A
Ad
dr
IR
A
Nin
M 0x5 3
gun
AN 3
o
L,
#
dat
os
AN
L
Nin
A, 0x5 2
gun
# 4
o
dat
os
AN
L
A,
Nin
ad 0x5 2
gun
dr 5
o
IR
A
M
1
AN 0x5 Nin
L 6 gun
A, o
@
R0
AN
L Nin
0x5 1
A, gun
7
@ o
R1
AN
Nin
L 0x5 1
gun
A, 8
o
R0
AN
Nin
L 0x5 1
gun
A, 9
o
R1
AN
Nin
L 0x5 1
gun
A, A
o
R2
AN
Nin
L 0x5 1
gun
A, B
o
R3
AN
Nin
L 0x5 1
gun
A, C
o
R4
AN
Nin
L 0x5 1
gun
A, d
o
R5
AN
Nin
L 0x5 1
gun
A, e
o
R6
1
AN
Nin
L 0x5
gun
A, F
o
R7
AN
L
C,
0x8 2 C
ad
2
dr
bit
s
AN
L
C, /
0x 2 C
ad
B0
dr
bit
s
Descripción: ANL hace un bit a bit "y" operación entre operando1 y operando2,
dejando el valor resultante en operando1. El valor de operando2 no se ve afectado.
Una lógica "Y", compara los bits de cada operando y establece el bit correspondiente en
el byte resultante sólo si el bit se fijó en los dos operandos original, de lo contrario el bit
resultante se borra.
Ope
CJ
raci
NE
ón:
Co
mpa
rar y
Fun
Salt
ción
o si
:
no
igua
l
CJN
E
ope
ran
Sint
do1,
axis
ope
:
ran
do2,
rela
ddr
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
CJ
NE
A,
los
dat 0X 3 C
os B4
#,
rel
ad
dr
CJ
NE
A,
ad
dr
0x 3 C
IR
B5
A
M,
rel
ad
dr
3 C
CJ 0xb
NE 6
@
R0,
#
dat
os,
rel
ad
dr
CJ
NE
@
R1,
# 0xb 3 C
dat 7
os,
rel
ad
dr
CJ
NE
R0,
los
dat 0x 3 C
os B8
#,
rel
ad
dr
CJ
NE
R1,
dat
0xb 3 C
os
9
#,
rel
ad
dr
CJ
NE
R2,
los
dat 0xb 3 C
os a
#,
rel
ad
dr
CJ
NE
R3,
los
dat 0xb 3 C
os b
#,
rel
ad
dr
CJ
NE
R4,
los
dat 0xb 3 C
os c
#,
rel
ad
dr
CJ
NE
R5,
los
dat 0x 3 C
os BD
#,
rel
ad
dr
CJ
NE
R6,
los
dat 0x 3 C
os BE
#,
rel
ad
dr
3 C
CJ 0x
NE BF
R7,
los
dat
os
#,
rel
ad
dr
Ope
CL
raci
R
ón:
Reg
Fun
istro
ción
abie
:
rto
Reg
Sint istr
axis o
: CL
R
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
2
Ad 0x Nin
dr C2 gun
po
co
o
CL
R
CL
0xc 1 C
R
3
C
CL Nin
0xe 1
R gun
4
A o
Descripción: CLR borra (juegos a 0) todos los bits (s) del registro indicado. Si el
registro es un poco (incluyendo el bit de acarreo), sólo el bit especificado está afectada.
Limpiando el acumulador establece el valor del acumulador a 0.
Ope
CP
raci
L
ón:
Co
mpl
Fun
eme
ción
nto
:
Reg
istro
Ope
Sint
ran
axis
do
:
CPL
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
1
Nin
CP 0x
gun
L A F4
o
CP 0xb 1 C
LC 3
Ad
dr
Nin
po 0x 2
gun
co B2
o
CP
L
Ope
DA
raci
ón:
Aju
ste
deci
Fun
mal
ción
del
:
acu
mul
ador
Sint DA
axis A
:
Ins Op Byt Ba
tru
cci Co nde
es
one de ras
s
0x 1 C
DA
D4
Ope Dici
raci emb
ón: re
Dec
Fun rem
ción ento
: Reg
istro
Reg
istr
Sint
o de
axis
dici
:
emb
re
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Nin
0x1 1
Dic gun
4
o
Ad
dr
IR
Nin
A 0x1 2
gun
M 5
o
dici
em
bre
Dic
iem Nin
0x1 1
bre gun
6
@ o
R0
Dic
iem Nin
0x1 1
bre gun
7
@ o
R1
Dic
Nin
iem 0x1 1
gun
bre 8
o
R0
Dic
Nin
iem 0x1 1
gun
bre 9
o
R1
Dic
Nin
iem 0x1 1
gun
bre A
o
R2
Dic
Nin
iem 0x1 1
gun
bre B
o
R3
Dic
Nin
iem 0x1 1
gun
bre C
o
R4
Dic
Nin
iem 0x1 1
gun
bre D
o
R5
Dic
Nin
iem 0x1 1
gun
bre E
o
R6
Dic
Nin
iem 0x1 1
gun
bre F
o
R7
Ope
raci DIV
ón:
Divi
de
Fun el
ción acu
: mul
ador
de B
Sint
DIV
axis
AB
:
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
DI C,
0x8 1
V OV
4
AB
Descripción: Divide el valor sin signo del acumulador por el valor sin signo del
"registro" B ". El cociente resultante se coloca en el acumulador y el resto se coloca en
el "Registro" B ".
Ope
DJ
raci
NZ
ón:
Dec
rem
ento
Fun y
ción salt
: o si
no
es
cero
Reg
istr
Sint o
axis DJN
: Z,
rela
ddr
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Ad
dr
IR
A
M Nin
0x 3
DJ gun
D5
NZ o
,
rel
ad
dr
DJ
NZ
Nin
R0, 0x 2
gun
rel D8
o
ad
dr
DJ
NZ
Nin
R1, 0x 2
gun
rel D9
o
ad
dr
DJ
NZ
Nin
R2, 0x 2
gun
rel DA
o
ad
dr
DJ
NZ
Nin
R3, 0xd 2
gun
rel b
o
ad
dr
DJ
NZ
Nin
R4, 0x 2
gun
rel DC
o
ad
dr
DJ
NZ
Nin
R5, 0x 2
gun
rel DD
o
ad
dr
DJ
NZ
Nin
R6, 0x 2
gun
rel DE
o
ad
dr
DJ
NZ
Nin
R7, 0x 2
gun
rel DF
o
ad
dr
Descripción: DJNZ disminuye el valor del registro por 1. Si el valor inicial de registro
es el 0, el valor decreciente hará que se restablece a 255 (0xFF Hex). Si el nuevo valor
de registro no es 0, el programa sucursal a la dirección indicada por addr relativa. Si el
nuevo valor de registro es de 0 el flujo del programa continúa con la instrucción
después de la instrucción DJNZ.
Ope
raci INC
ón:
Fun Incr
eme
nto
ción de
: Reg
istro
de
Reg
Sint
istr
axis
o
:
INC
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
IN Nin
0x0 1
C gun
4
A o
Ad
dr
IR Nin
0x0 2
A gun
5
M o
IN
C
IN
Nin
C 0x0 1
gun
@ 6
o
R0
IN
Nin
C 0x0 1
gun
@ 7
o
R1
IN Nin
0x0 1
C gun
8
R0 o
1
IN 0x0 Nin
C gun
9
R1 o
IN Nin
0x0 1
C gun
A
R2 o
IN Nin
0x0 1
C gun
B
R3 o
IN Nin
0x0 1
C gun
C
R4 o
IN Nin
0x0 1
C gun
D
R5 o
IN Nin
0x0 1
C gun
E
R6 o
IN Nin
0x0 1
C gun
F
R7 o
IN
Nin
C 0x 1
gun
DP A3
o
TR
En el caso de "INC DPTR", se incrementa el valor de dos bytes valor entero sin signo
de DPTR. Si el valor inicial de DPTR es 65535 (0xFFFF Hex), incrementando el valor
hará que se restablece a 0. Una vez más, la bandera de acarreo no se establece cuando
el valor de DPTR "se da la vuelta" 65535-0.
Ope
JB
raci
ón:
Salt
Fun
ar si
ción
Bit
:
Set
Add
r
Sint poc
axis o
: JB,
rela
ddr
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Ad
dr
po
Nin
co 0x2 3
gun
JB, 0
o
rel
ad
dr
Descripción: ramas JB a la dirección indicada por reladdr si el bit indicado por addr
bit está establecido. Si el bit no se establece la ejecución del programa continúa con la
instrucción después de la instrucción JB.
Ope JB
raci
C
ón:
Si
Salt
ar
Fun Bit
ción Set
: y
Clea
r Bit
Add
r
Sint poc
axis o
: JB,
rela
ddr
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Ad
dr
po
co Nin
0x1 3
JB gun
0
C, o
rel
ad
dr
Descripción: JBC se rama a la dirección indicada por reladdr si el bit indicado por
addr bit está establecido. Antes de la ramificación de reladdr la instrucción borrar el bit
indicado. Si el bit no se establece la ejecución del programa continúa con la instrucción
siguiente a la instrucción de JBC.
Salt
Fun ar si
ción Carr
: y
Set
Sint Rel
axis add
: r JC
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Rel
Nin
ad 0x4 2
gun
dr 0
o
JC
Ope
JM
raci
P
ón:
Fun Salt
ción ar a
: dato
s
punt
ero
+
acu
mul
ador
JMP
Sint @ A
axis +
: DP
TR
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
JM
P
Nin
@ 0x7 1
gun
A+ 3
o
DP
TR
Ope
JN
raci
B
ón:
Salt
Fun ar si
ción no
: Bit
Set
Sint Add
axis r
: poc
o
JNB
,
rela
ddr
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Ad
dr
po
co Nin
0x3 3
JN gun
0
B, o
rel
ad
dr
Ope
CP
raci
N
ón:
Salt
ar si
Fun
no
ción
Carr
:
y
Set
Rel
Sint add
axis r
: CP
N
Ins Op Byt Ba
tru
cci Co nde
es
one de ras
s
Rel
ad Nin
0x5 2
dr gun
0
CP o
N
Descripción: ramas CPN a la dirección indicada por reladdr si el bit de acarreo no está
establecida. Si el bit de acarreo se establece la ejecución del programa continúa con la
instrucción después de la instrucción JNB.
Ver también: JC
Ope
JN
raci
Z
ón:
Salt
ar si
el
Fun acu
ción mul
: ador
no
es
cero
Rel
Sint
add
axis
r
:
JNZ
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Rel
ad Nin
0x7 2
dr gun
0
JN o
Z
Ver también: JZ
Ope
JZ
raci
ón:
Salt
ar si
el
Fun
acu
ción
mul
:
ador
Zer
o
Rel
Sint
add
axis
r
:
JNZ
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Rel
Nin
ad 0x6 2
gun
dr 0
o
JZ
Descripción: ramas JZ a la dirección indicada por reladdr si el acumulador contiene el
valor 0. Si el valor del acumulador no es cero ejecución del programa continúa con la
instrucción después de la instrucción JNZ.
Ope LC
raci AL
ón: L
Lla
Fun mad
ción a de
: larg
a
Add
r
Sint códi
axis go
: LC
AL
L
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Ad
dr
có
Nin
dig 0x1 3
gun
o 2
o
LC
AL
L
Ope
LJ
raci
MP
ón:
Salt
Fun
o de
ción
long
:
itud
Add
r
Sint
códi
axis
go
:
LJ
MP
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Ad
dr
có Nin
0x0 3
dig gun
2
o o
LJ
MP
Mo
ver
Fun
la
ción
me
:
mor
ia
MO
V
ope
Sint
ran
axis
do1,
:
ope
ran
do2
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
M
OV
@ Nin
0x7 2
R0, gun
6
# o
dat
os
M
OV
@ Nin
0x7 2
R1, gun
7
# o
dat
os
1
M 0x Nin
OV F6 gun
@ o
R0,
A
M
OV Nin
0x 1
@ gun
F7
R1, o
A
M
OV
@
R0, Nin
0x 2
ad gun
A6
dr o
IR
A
M
M
OV
@
R1, Nin
0x 2
ad gun
A7
dr o
IR
A
M
M
OV
Nin
A, 0x7 2
gun
# 4
o
dat
os
M
OV Nin
0x 1
A, gun
E6
@ o
R0
1
M 0x Nin
OV E7 gun
A, o
@
R1
M
Nin
OV 0x 1
gun
A, E8
o
R0
M
Nin
OV 0xe 1
gun
A, 9
o
R1
M
Nin
OV 0x 1
gun
A, EA
o
R2
M
Nin
OV 0x 1
gun
A, EB
o
R3
M
Nin
OV 0x 1
gun
A, EC
o
R4
M
Nin
OV 0x 1
gun
A, ED
o
R5
M
Nin
OV 0x 1
gun
A, EE
o
R6
M
Nin
OV 0x 1
gun
A, EF
o
R7
2
M 0x Nin
OV E5 gun
A,
ad
dr
o
IR
A
M
M
OV
C,
0x 2 C
ad
A2
dr
bit
s
M
OV
DP
Nin
TR 0x9 3
gun
,# 0
o
dat
a1
6
M
OV
Nin
R0, 0x7 2
gun
# 8
o
dat
os
M
OV
Nin
R1, 0x7 2
gun
# 9
o
dat
os
M
OV
Nin
R2, 0x7 2
gun
# A
o
dat
os
2
M
OV
Nin
R3, 0x7
gun
# B
o
dat
os
M
OV
Nin
R4, 0x7 2
gun
# C
o
dat
os
M
OV
Nin
R5, 0x7 2
gun
# D
o
dat
os
M
OV
Nin
R6, 0x7 2
gun
# E
o
dat
os
M
OV
Nin
R7, 0x7 2
gun
# F
o
dat
os
M
Nin
OV 0x 1
gun
R0, F8
o
A
M
Nin
OV 0x 1
gun
R1, F9
o
A
1
M
Nin
OV 0xF
gun
R2, A
o
A
M
Nin
OV 0x 1
gun
R3, FB
o
A
M
Nin
OV 0x 1
gun
R4, FC
o
A
M
Nin
OV 0xf 1
gun
R5, d
o
A
M
Nin
OV 0x 1
gun
R6, FE
o
A
M
Nin
OV 0x 1
gun
R7, FF
o
A
M
OV
R0,
Nin
ad 0x 2
gun
dr A8
o
IR
A
M
2
M 0xa Nin
OV 9 gun
R1, o
ad
dr
IR
A
M
M
OV
R2,
Nin
ad 0x 2
gun
dr AA
o
IR
A
M
M
OV
R3,
Nin
ad 0x 2
gun
dr AB
o
IR
A
M
M
OV
R4,
Nin
ad 0x 2
gun
dr AC
o
IR
A
M
M
OV
R5,
Nin
ad 0xa 2
gun
dr d
o
IR
A
M
2
M 0x Nin
OV AE gun
R6, o
ad
dr
IR
A
M
M
OV
R7,
Nin
ad 0x 2
gun
dr AF
o
IR
A
M
Ad
dr
po Nin
0x9 2
co gun
2
M o
OV
,C
Ad
dr
IR
A
Nin
M 0x7 3
gun
M 5
o
OV
,#
dat
os
Ad
dr
IR
A Nin
0x8 2
M gun
6
M o
OV
,@
R0
2
Ad 0x8 Nin
dr 7 gun
IR o
A
M
M
OV
,@
R1
Ad
dr
IR
A Nin
0x8 2
M gun
8
M o
OV
,
R0
Ad
dr
IR
A Nin
0x8 2
M gun
9
M o
OV
,
R1
Ad
dr
IR
A Nin
0x8 2
M gun
A
M o
OV
,
R2
Ad
dr
IR
A Nin
0x8 2
M gun
B
M o
OV
,
R3
2
Ad 0x8 Nin
dr c gun
IR
A
M
M o
OV
,
R4
Ad
dr
IR
A Nin
0x8 2
M gun
D
M o
OV
,
R5
Ad
dr
IR
A Nin
0x8 2
M gun
E
M o
OV
,
R6
Ad
dr
IR
A Nin
0x8 2
M gun
F
M o
OV
,
R7
Ad
dr
IR
Nin
A 0x 2
gun
M F5
o
M
OV
,A
Ad
dr
IR
A
M
M Nin
0x8 3
OV gun
5
, o
ad
dr
IR
A
M
** Nota: En el caso de "addr IRAM MOV, addr IRAM", los bytes operando de la
instrucción se almacenan en orden inverso. Es decir, la instrucción que consiste de los
bytes 0x85, 0x20, 0x50 significa "Mover el contenido de la ubicación de memoria RAM
interna 0x20 interno de ubicación de memoria RAM 0x50", mientras que lo contrario se
presume en general.
Ope
MO
raci
VC
ón:
Mo
ver
códi
go
Fun byte
ción para
: los
acu
mul
ador
es
MO
VC
Sint A,
axis @ A
: +
regi
stro
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
M
OV
C
Nin
A, 0x9 1
gun
@ 3
o
A+
DP
TR
M
OV
C Nin
0x8 1
A, gun
3
@ o
A+
PC
Ope MO
raci VX
ón:
Mo
ver
dato
sa/
desd
e la
Fun
me
ción
mor
:
ia
exte
rna
(XR
AM
)
MO
VX
ope
Sint
ran
axis
do1,
:
ope
ran
do2
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
M
OV
X Nin
0x 1
@ gun
F0
DP o
TR
,A
M
OV
Nin
X 0x 1
gun
@ F2
o
R0,
A
1
M
OV
Nin
X 0xf
gun
@ 3
o
R1,
A
M
OV
X Nin
0x 1
A, gun
E0
@ o
DP
TR
M
OV
Nin
X 0x 1
gun
A, E2
o
@
R0
M
OV
Nin
X 0x 1
gun
A, E3
o
@
R1
Ope
MU
raci
L
ón:
Mul
tipli
ca el
Fun
acu
ción
mul
:
ador
por
B
Sint MU
axis L
: AB
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
M C,
0x 1
UL OV
A4
AB
Descripción: Multiples el valor sin signo del acumulador por el valor sin signo del
"registro" B ". El byte menos significativo del resultado se coloca en el acumulador y la
mayoría de los importantes-byte se coloca en el "Registro" B ".
Ope NO
raci
P
ón:
Nin
gun
Fun o,
ción perd
: er el
tiem
po
No
Sint Ope
axis raci
: ón
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Nin
NO 0x0 1
gun
P 0
o
Descripción: NOP, como su nombre lo indica, no causa ninguna operación que tenga
lugar durante un ciclo de la máquina. NOP generalmente se utiliza sólo para la
sincronización. Absolutamente ninguna bandera o de los registros afectados.
Ope
OR
raci
L
ón:
OR
Fun
bit a
ción
bit
:
Sint OR
axis L
: ope
ran
do1,
ope
ran
do2
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Ad
dr
IR
Nin
A 0x4 2
gun
M 2
o
OR
L,
A
Ad
dr
IR
A
Nin
M 0x4 3
gun
OR 3
o
L,
#
dat
os
OR
L
Nin
A, 0x4 2
gun
# 4
o
dat
os
OR
L
A,
Nin
ad 0x4 2
gun
dr 5
o
IR
A
M
1
OR 0x4 Nin
L
A, gun
6
@ o
R0
OR
L Nin
0x4 1
A, gun
7
@ o
R1
OR
Nin
L 0x4 1
gun
A, 8
o
R0
OR
Nin
L 0x4 1
gun
A, 9
o
R1
OR
Nin
L 0x4 1
gun
A, A
o
R2
OR
Nin
L 0x4 1
gun
A, B
o
R3
OR
Nin
L 0x4 1
gun
A, c
o
R4
OR
Nin
L 0x4 1
gun
A, D
o
R5
1
OR 0x4 Nin
L E gun
A, o
R6
OR
Nin
L 0x4 1
gun
A, F
o
R7
OR
L
C,
0x7 2 C
ad
2
dr
bit
s
OR
L
C, /
0x 2 C
ad
A0
dr
bit
s
Descripción: ORL hace un bit a bit "u" Operación entre operando1 y operando2,
dejando el valor resultante en operando1. El valor de operando2 no se ve afectado.
Lógica "OR", compara los bits de cada operando y establece el bit correspondiente en el
byte resultante Si el bit se estableció en cualquiera de los operandos originales, de lo
contrario el bit resultante se borra.
Ope
PO
raci
P
ón:
Pop
Valo
Fun
r de
ción
la
:
pila
Sint POP
axis
:
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Ad
dr
IR Nin
0x 2
A gun
D0
M o
PO
P
Ope
PU
raci
SH
ón:
Pus
h
Fun
valo
ción
r en
:
la
pila
Sint
PUS
axis
H
:
Ins Op Byt Ba
tru Co es nde
cci de ras
one
s
Ad
dr
IR Nin
0x 2
A gun
C0
M o
PU
SH
Ope
RE
raci
T
ón:
Ret
orno
Fun
de
ción
subr
:
utin
a
Sint
axis RET
:
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Nin
RE 0x2 1
gun
T 2
o
Descripción: RET se usa para volver de una subrutina denominada anteriormente por
LCALL o ACALL. Ejecución del programa continúa en la dirección que se calcula al
abrir la más alta de 2 bytes de la pila. El más significativo-byte se extrae de la pila
primero, seguido por el byte menos significativo.
Ope
RE
raci
TI
ón:
De
regr
eso
Fun
de
ción
inter
:
rupc
ión
Sint
RE
axis
TI
:
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Nin
RE 0x3 1
gun
TI 2
o
Descripción: RETI se utiliza para volver de una rutina de interrupción del servicio.
RETI primero permite a las interrupciones de la igualdad y menor prioridad a la
interrupción que se está finalizando. La ejecución del programa continúa en la
dirección que se calcula al abrir la más alta de 2 bytes de la pila. El más significativo-
byte se extrae de la pila primero, seguido por el byte menos significativo.
Funciones RETI idéntica a la RET si se ejecuta fuera de una rutina de interrupción del
servicio.
Ope
RL
raci
ón:
Rot
ar
Fun acu
ción mul
: ador
rest
ante
Sint RL
axis A
:
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
RL
0x2 1 C
A
3
Ope
RL
raci
C
ón:
Fun Gire
ción a la
: izqu
ierd
a
por
acu
mul
ador
Carr
y
Sint
RL
axis
CA
:
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
RL
0x3 1 C
C
3
A
Ope
RR
raci
ón:
Rot
ar
acu
Fun
mul
ción
ador
:
Der
ech
o
RR
Sint
axis A
:
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Nin
RR 0x0 1
gun
A 3
o
Ope
CR
raci
R
ón:
Rot
ar
acu
mul
Fun
ador
ción
Der
:
ech
o
acar
reo
Sint
RR
axis
CA
:
Ins Op Byt Ba
tru Co es nde
cci de ras
one
s
RR
0x1 1 C
C
3
A
Ope
SE
raci
TB
ón:
Fun Bit
ción Set
:
Add
r
Sint
poc
axis
o
:
SET
B
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
SE
0x 1 C
TB
D3
C
2
Ad 0x Nin
dr D2 gun
po o
co
SE
TB
Ope
SJ
raci
MP
ón:
Salt
Fun
ar a
ción
cort
:
o
Rel
Sint add
axis r
: SJM
P
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Rel
ad Nin
0x8 2
dr gun
0
SJ o
MP
Ope
SU
raci
BB
ón:
Rest
ar
de
acu
mul
ador
Fun con
ción la
: Obt
enci
ón
de
Prés
tam
os
SU
BB
Sint
A,
axis
ope
:
ran
do
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
SU
C,
BB
AC
A, 0x9 2
,
# 4
OV
dat
os
2 C,
SU 0x9 AC
BB 5 ,
A, OV
ad
dr
IR
A
M
SU C,
BB AC
0x9 1
A, ,
6
@ OV
R0
SU C,
BB AC
0x9 1
A, ,
7
@ OV
R1
C,
SU
AC
BB 0x9 1
,
A, 8
OV
R0
C,
SU
AC
BB 0x9 1
,
A, 9
OV
R1
C,
SU
AC
BB 0x9 1
,
A, A
OV
R2
C,
SU
AC
BB 0x9 1
,
A, B
OV
R3
C,
SU
AC
BB 0x9 1
,
A, c
OV
R4
1 C,
SU 0x9 AC
BB D ,
A,
OV
R5
C,
SU
AC
BB 0x9 1
,
A, E
OV
R6
C,
SU
AC
BB 0x9 1
,
A, F
OV
R7
Descripción: SUBB restar el valor del operando desde el valor del acumulador,
dejando el valor resultante en el acumulador. El operando valor no se ve afectado.
Ope
SW
raci
AP
ón:
Swa
p
Fun acu
ción mul
: ador
Nib
bles
Sint SW
axis AP
: A
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
SW Nin
0x 1
AP gun
C4
A o
Descripción: los swaps de SWAP bits 0-3 del acumulador con los bits 4-7 del
acumulador. Esta instrucción es idéntica a la de ejecución "RR A" o "RL A" cuatro
veces.
Und
efin
Ope
ed
raci
Inst
ón:
ruc
ción
Fun Inde
ción fini
: do
Sint
???
axis
:
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
??
0x 1 C
?
A5
Nota: Se ha informado de que Philips 8051 P89C669 modelo utiliza el prefijo 0xA5
instrucción para que el acceso de usuario diferente (ampliada) zona de SFR.
Ope
XCI
raci
I
ón:
Inte
rca
Fun
mbi
ción
o de
:
Byt
es
XC
H
Sint
A,
axis
regi
:
stro
de
Ins Op Byt Ba
tru Co es nde
cci de ras
one
s
XC
H Nin
0x 1
A, gun
C6
@ o
R0
XC
H Nin
0x 1
A, gun
C7
@ o
R1
XC
Nin
H 0x 1
gun
A, C8
o
R0
XC
Nin
H 0x 1
gun
A, C9
o
R1
XC
Nin
H 0x 1
gun
A, CA
o
R2
XC
Nin
H 0x 1
gun
A, CB
o
R3
XC
Nin
H 0x 1
gun
A, CC
o
R4
XC
Nin
H 0x 1
gun
A, CD
o
R5
1
XC
Nin
H 0x
gun
A, CE
o
R6
XC
Nin
H 0x 1
gun
A, CF
o
R7
XC
H
A,
Nin
ad 0x 2
gun
dr C5
o
IR
A
M
Ope
XC
raci
HD
ón:
Inte
rca
Fun
mbi
ción
o de
:
dígit
os
XC
HD
Sint A,
axis [@
: R0 /
@
R1]
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
XC
HD Nin
0x 1
A, gun
D6
@ o
R0
XC
HD Nin
0x 1
A, gun
D7
@ o
R1
Descripción: Intercambio bits 0-3 del acumulador con bits 0-3 de la dirección de la
RAM interna señalado indirectamente por R0 o R1. Bits 4-7 de cada registro se ven
afectados.
Ver también: DA
Ope
XR
raci
L
ón:
OR
bit a
Fun bit
ción excl
: usiv
o
Sint XR
axis L
: ope
ran
do1,
ope
ran
do2
Ins
tru Op Ba
Byt
cci Co nde
es
one de ras
s
Ad
dr
IR
Nin
A 0x6 2
gun
M 2
o
XR
L,
A
Ad
dr
IR
A
Nin
M 0x6 3
gun
XR 3
o
L,
#
dat
os
XR
L
Nin
A, 0x6 2
gun
# 4
o
dat
os
XR
L
A,
Nin
ad 0x6 2
gun
dr 5
o
IR
A
M
1
XR 0x6 Nin
L 6 gun
A,
@ o
R0
XR
L Nin
0x6 1
A, gun
7
@ o
R1
XR
Nin
L 0x6 1
gun
A, 8
o
R0
XR
Nin
L 0x6 1
gun
A, 9
o
R1
XR
Nin
L 0x6 1
gun
A, a
o
R2
XR
Nin
L 0x6 1
gun
A, B
o
R3
XR
Nin
L 0x6 1
gun
A, C
o
R4
XR
Nin
L 0x6 1
gun
A, D
o
R5
XR
Nin
L 0x6 1
gun
A, E
o
R6
XR
Nin
L 0x6 1
gun
A, F
o
R7
Descripción: XRL hace un bit a bit "o exclusivos" de cooperación entre operando1 y
operando2, dejando el valor resultante en operando1. El valor de operando2 no se ve
afectado. Una lógica "o exclusivos" compara los bits de cada operando y establece el
bit correspondiente en el byte resultante si el bit se estableció en cualquiera (pero no
ambos) de los operandos original, se borra lo contrario, el bit.