Instrucciones 8051

Solo disponible en BuenasTareas
  • Páginas : 7 (1714 palabras )
  • Descarga(s) : 7
  • Publicado : 30 de julio de 2010
Leer documento completo
Vista previa del texto
SET DE INSTRUCCIONES PARA MC-8X51
INSTRUCCIÓN

OPERACIÓN

Modo de Direccionado
DIR
X X X X X X X X X X Acc X
DPTR

IND REG
X X X X X X

INM
X X X

ANCHO DIRECCION
ARL48925631-P

No lee:
PIN

Afecta a:
CY OV AC CM
1 1 2 2 2 2 1 1 X X X X X X X X X 1 1 1 1 1 2 1 1 4 4 1

INSTRUCCIONES PARA LA TRANSFERENCIA DE DATOS CON RAM INTERNA MOV A, A= MOV , A =A MOV , = MOV DPTR,#D16 DPTR=16bits PUSH INC SP MOV @SP, (Almacenamiento en la pila) POP MOV ,@SP X DEC SP XCH A, A (se produce un intercambio de contenidos) XCHD A,@Ri A @Ri (intercambia 4bits LSB de A con 4bits LSB que apunta Ri) INSTRUCCIONES ARITMETICAS ADD A, A=A+ ADDC A, A=A++C (acumulador + byte indicado + acarreo) SUBB A, A=A- INC A A=A+1 INC =+1 (Incrementa el byte en 1) INC DPTR DPTR=DPTR+1(Incrementa el apuntador de datos) DEC A A=A-1 DEC =+1 MUL AB B:A=BxA (A=byte bajo, B=byte alto) DIV AB A=cociente de [A/B] (acarreo y OV son limpiados) DA A Ajuste decimal del acumulador por adición. INSTRUCCIONES LÓGICAS ANL , Operación AND bit a bit. Guarda resultado en variable ORL , Operación OR entre las variables indicadas. Resultado en byte XRL , Operación OR-EX entre las variablesindicadas. INSTRUCCIONES BOOLEANAS ANL C,bit C=C AND bit ANL C,/bit C=C AND /bit ORL C,bit C=C ORL bit ORL C,/bit C=C ORL /bit MOV C,bit C=bit MOV bit,C bit=C CLR C C=0 (Limpia el acumulador) CLR bit bit=0 (Limpia el bit. Puede ser el bit C u otro directamente direccionable) SETB bit bit=1 SETB C C=1 CPL C C=/C (complemento del acarreo) CPL bit bit=/bit (Complemento del bit. Puede ser el bit C u otrodirec. direccionab.) CPL A Complementa los 8 bits del acumulador JC rel Salto si C=1 JNC rel Salto si C=0 JB bit,rel Salto si bit=1 JNB bit,rel Salto si bit=0 JBC bit,rel Salto si bit=1 y clear bit INSTRUCCIONES DE SALTO INCONDICIONAL JMP dir Salto a dir SJMP dir Salto –128 a +127 del PC corriente AJMP dir Sustituye 11 bits LSB del PC (salto absoluto dentro de los 2K) LJMP dir Salto a cualquier lugarde las 64K (dirección 16, salto largo) JMP @A+DPTR Salto A+DPTR (salto indirecto) CALL dir Llama a la subrutina “dirección”. LCALL dir Llamada a subrutina a cualquier lugar de memoria de programa de 16 bits. ACALL dir Usa formato 11bits. Llama a subrutina presente en el corriente bloque de 2K Extrae de la pila los bytes bajo-alto del PC, Dec dos veces el apuntador de apilamiento RET RETI Retorno deinterrupción. NOP La ejecución continua con la instrucción siguiente. No afecta al PC. INSTRUCCIONES DE SALTO CONDICIONAL JZ rel Salto si A=0 JNZ rel Salto si A0 DJNZ ,rel Decrementa y salta si no es 0 CJNE A, ,rel Salta si A CJNE , #D,rel Salta si #D ACCESO A MEMORIA DE DATOS Y PROGRAMA EXTERNA. RAM EXTERNA MOVX A,@Ri A @Ri ext MOVX @Ri,A @Ri A MOVX A, @DPTR A @DPTR MOVX @DPTR, A @DPTR A ACCESOA MEMORIA DE DATOS Y PROGRAMA EXTERNA. EPROM EXTERNA MOVC A, @A+DPTR Lee memoria de programa @(A+DPTR) MOVC A, @A+PC Lee memoria de programa @(A+PC) INSTRUCCIONES DE ROTACIÓN RL A Los 8 bits de A son rotados 1bit a la izquierda. El bit7 pasa al bit0. RLC A Los 8 bits de A y el acarreo son rotados 1bit a la izq. El bit7 pasa al acarreo. RR A Los 8 bits de A son rotados 1bit a la derecha. El bit0pasa al bit7. RRC A Los 8 bits de A y el acarreo son rotados 1bit a la der. El bit0 pasa al acarreo. SWAP A Intercambia los 4 bits altos con los 4 bits bajos de A. (Sin acarreo.)

X

X

X ARL48925631-P

X X X X

X X X X

X X X X

Acc X
Acc,B Acc,B

X

X

X 0 0 X ARL48925631-P X X

Acc X X X X X X X X X X X X ARL48925631-P X X X

X X X X X 0 X X 1 X X

2 2 2 2 1 2 1 1 1 1 11 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1

X ARL48925631-P

ARL48925631-P Acc Acc X X X 2 2 2 2 2 2 2 2 2 2 2 ARL48925631-P X X 1 1 1 1 1

X X X ARL48925631-P 8 bits 8 bits 16bits 16bits ARL48925631-P

X X X

INSTRUCCIÓN

OPERACIÓN

DIR

IND REG

INM

Modo de Direccionado

ANCHO DIRECCION

PIN

CY OV AC

CM

No lee:

Afecta a:

MAPA DE MEMORIA RAM INTERNA (128 BYTES)...
tracking img