Anda di halaman 1dari 2

SetdeInstruccionesMICROCONTROLADORDEARQUITECTURA8051

INSTRUCCIN

OPERACIN

INSTRUCCIONESPARALATRANSFERENCIADEDATOS CON RAMINTERNA


MOVA,<src>
A=<src>
MOV<dest>,A
<dest>=A
MOV<dest>,<scr> <dest>=<src>
MOVDPTR,#D16 DPTR=16bits
PUSH<src>
INCSPMOV@SP,<src>
(Almacenamientoenlapila)
POP<dest>
MOV<dest>,@SPXDECSP
XCHA,<byte>
A<==><byte>
(seproduceunintercambiodecontenidos)
XCHDA,@Ri
A<==>@Ri
(intercambia4bitsLSBdeAcon4bitsLSBqueapuntaRi)
INSTRUCCIONESARITMETICAS
ADDA,<byte>
A=A+<byte>
ADDCA,<byte>
A=A+<byte>+C
(acumulador+byteindicado+acarreo)
SUBBA,<byte>
A=A<byte>
INCA
A=A+1
INC<byte>
<byte>=<byte>+1

(Incrementaelbyteen1)
INCDPTR
DPTR=DPTR+1

(Incrementaelapuntadordedatos)
DECA
A=A1
DEC<byte>
<byte>=<byte>+1
MULAB
B:A=BxA

(A=bytebajo,B=bytealto)
DIVAB
A=cocientede[A/B]

(acarreoyOVsonlimpiados)
DAA
Ajustedecimaldelacumulador poradicin.
INSTRUCCIONESLGICAS
ANL<dest>,<src> OperacinANDbitabit.Guarda resultado en variable
<dest>
ORL<dest>,<src> OperacinOR entrelasvariables indicadas. Resultado
enbyte<dest>
XRL<dest>,<src>
ANLC,bit
ANLC,/bit
ORLC,bit
ORLC,/bit
MOVC,bit
MOVbit,C
CLRC
CLRbit
SETBbit
SETBC
CPLC
CPLbit
CPLA
JCrel

OperacinOREXentrelasvariables indicadas.
INSTRUCCIONESBOOLEANAS
C=CANDbit
C=CAND/bit
C=CORLbit
C=CORL/bit
C=bit
bit=C
C=0 (Limpia elacumulador)
bit=0 (Limpia elbit.Puedeser el bit C uotro
directamentedireccionable)
bit=1
C=1
C=/C (complementodelacarreo)
bit=/bit(Complementodelbit.PuedeserelbitCuotro
direc.direccionab.)
Complementa los8bitsdelacumulador
SaltosiC=1

Modo de Direccionado Afecta a:


DIR IND REG INM CY OV AC

X
X
X
X

X
X
X

X
X
X
X

X
X

1
1
2
2
2

2
1

X
X

X
X

X
X

X
X

X
Acc
X

DPTR

Acc
X
Acc,B

CM

Acc,B

Acc

X
X

X
X

X
X

1
1

1
1
1

1
1
4

2
2
2
2
1
2
1
1

1
X

1
1
1
1

X
X
X
X
X

INSTRUCCIN
JNCrel
JBbit,rel
JNBbit,rel
JBCbit,rel

OPERACIN

Modo de Direccionado Afecta a:


DIR IND REG INM CY OV AC

CM
2
2
2
2

2
2

2
1

SaltosiC=0
Saltosibit=1
Saltosibit=0
Saltosibit=1 yclearbit
INSTRUCCIONESDESALTOINCONDICIONAL
JMPdir
Saltoadir
SJMPdir
Salto128a +127delPCcorriente
AJMPdir
Sustituye11bitsLSBdelPC

(saltoabsolutodentrodelos2K)
LJMPdir
Saltoacualquierlugardelas64K
(direccin16,saltolargo)
JMP@A+DPTR
SaltoA+DPTR

(saltoindirecto)
CALLdir
Llamaalasubrutinadireccin.
LCALLdir
Llamadaasubrutinaacualquier lugar de memoria de
programade16bits.
ACALLdir
Usaformato 11bits.Llamaasubrutina presente en el
corrientebloquede2K
RET
Extraedelapilalosbytesbajoalto del PC, Decrementa
dosveceselapuntadordeapilamiento
RETI
Retornodeinterrupcin.
NOP
Laejecucin continaconlainstruccin siguiente. No
afectaalPC.
INSTRUCCIONES DESALTOCONDICIONAL
JZrel
SaltosiA=0
Acc
JNZrel
SaltosiA<>0
Acc
DJNZ<byte>,rel
Decrementa y saltasinoes0
X
CJNEA,<byte>,rel SaltasiA<><byte>
X
CJNE<byte>,#D,rel Saltasi<byte><>#D
ACCESOAMEMORIADEDATOSYPROGRAMAEXTERNA. RAMEXTERNA
MOVXA,@Ri
A
@Riext
MOVX@Ri,A
@Ri
A
MOVXA,@DPTR A
@DPTR
MOVX@DPTR,A @DPTR
A
ACCESOAMEMORIADEDATOSYPROGRAMAEXTERNA. EPROM EXTERNA
MOVCA,@A+DPTR Leememoria deprograma@(A+DPTR)
MOVCA,@A+PC Leememoria deprograma@(A+PC)
INSTRUCCIONESDEROTACIN
RLA
Los8bitsde Asonrotados1bit a la izquierda. El bit7
pasaalbit0.
RLCA
Los8bitsde Ayelacarreosonrotados 1bit a la izq. El
bit7pasaalacarreo.
RRA
Los8bitsde Asonrotados1bit a la derecha. El bit0
pasaalbit7.
RRCA
Los8bitsde Ayelacarreosonrotados 1bit a la der. El
bit0pasaalacarreo.
SWAPA
Intercambia los4bitsaltoscon los4bits bajos de A.
(Sinacarreo.)

RalAlejandroQLraulalejandroql@gmail.com

X X
X
X

2
2
2

2
2
2
2
2
2
2
2
2
2
2
1