Está en la página 1de 3

SET DE INSTRUCCIONES DEL MICROCONTROLADOR 89C51

 

Instrucción

Modos de Direccionamiento

Descripción

No. Ciclos

 

Instrucciones de Movimiento:

 

MOV <Dest>, <Fuente>

Cualquiera de Rn, directa, inmediata, de registro, @Rn.

Mueve o copia cualquier valor proveniente de un registro, apuntados, dato, etc. a otro registro o dirección de memoria.

1

MOVX A, @DPTR @DPTR, A

Directo

Extrae la información de una memoria RAM externa por medio de un apuntador de 16 bits (DPTR)

1

MOVC A, @A+DPTR

Directo

Extrae la información contenida en una tabla dinámica cuya dirección de 16 bits esta dada por DPTR en conjunto con el registro A.

2

PUSH Fuente

Cualquiera de Rn, directa, @Rn, dato.

Coloca el dato contenido dentro del registro o localidad de memoria en la última localidad de la Pila.

2

POP

Destino

Cualquiera de Rn, directa, @Rn, dato.

Extrae el último dato de la pila y lo coloca en el registro o localidad destino.

2

 

Instrucciones Aritméticas

 

ADD A, fuente A, #Dato

Cualquiera de Rn, directa, @Rn, dato.

Suma de dos números sin signo. El resultado se coloca en A.

1

ADDC A, fuente A, #Dato

Cualquiera de Rn, directa, @Rn, dato.

Suma de dos valores con acarreo. Resultado A.

1

SUBB A, fuente A, #Dato

Cualquiera de Rn, directa, @Rn, dato.

Resta de dos valores sin signo. Resultado en A

1

1

INC

A

Cualquiera de Rn, directa, @Rn, dato, DPTR

Incremento en uno Fuente = Fuente+1

1

Fuente

1

DPTR

 

2

DEC A

Cualquiera de Rn, directa, @Rn, dato.

Decremento en uno Fuente = Fuente-1

1

 

Fuente

1

MUL AB

 

Multiplicación A y B. El resultado superior en B e inferior en A

2

DIV

AB

 

División A entre B. El resultado se coloca en A y el residuo en B

2

DA A

 

Ajuste a decimal de A

1

XCH A, fuente

Cualquiera de Rn, directa, @Rn, dato.

Intercambia el acumulador con la variable de la fuente o de registro

1

XCHD A, @Rn

Directa

Intercambia un digito entre A y un registro cualquiera de Rn.

1

NOP

 

No Operación

1

 

Instrucciones Lógicas

 

ANL A, fuente A, #Dato Directa, A Directa, #Dato

Cualquiera de Rn, directa, @Rn, dato.

AND lógica

1

1

 

1

2

ORL A, fuente A, #Dato Directa, A Directa, #Dato

Cualquiera de Rn, directa, @Rn, dato.

OR Lógica

1

1

 

1

2

XRL A, fuente A, #Dato Directa, A Directa, #Dato

Cualquiera de Rn, directa, @Rn, dato.

XOR Lógica

1

1

 

1

2

CLR A

Cualquiera de Rn, directa, dato.

Limpia Registro, dato, localidad

1

Fuente

1

CPL A

Cualquiera de Rn, directa, dato.

Complementa A (Niega A)

1

Fuente

1

RL A

 

Rota a la izquierda A en uno

1

RR A

 

Rota a la derecha A en uno

1

RRC A

 

Rota a la izquierda con acarreo en uno

1

RLC A

 

Rota a la derecha con acarreo en uno

1

SWAP A

 

Intercambia nibbles de A

1

SETB Fuente

Directo, Registro

Coloca el valor de uno a cualquier registro (o segmento de registro).

1

 

Instrucciones de Control

 

JC Etiq

Relativa

Salta si la bandera de acarreo esta activada

2

JNC Etiq

Relativa

Salta si la bandera de acarreo esta desactivada

2

JB bit, Etiq

Directa

Verifica si el bit esta activado y salta en caso de ser verdadero.

2

JNB bit, Etiq

Directa

Verifica si el bit esta desactivado y salta en caso de ser verdadero.

2

JBC bit, Etiq

Directa

Salta si el bit esta activado y después borra el bit.

2

JZ Etiq

Relativa

Salta si el bit de cero esta activo

2

JNZ Etiq

Relativo

Salta si el bit de cero esta desactivo

2

AJMP Etiqueta

Relativo

Llamada a una etiqueta. Salto con signo de 128 localidades de memorias.

2

LJMP

Relativo

Salto a una etiqueta que se encuentra a 16 bits de distancia en la dirección.

2

ACALL Etiqueta

Direccionamiento

Llamada a un procedimiento con nombre ETIQUETA

2

Relativo

LCALL

Relativo

Llamada a una subrutina laga (de 16 bits de salto)

2

RET

Relativa

Regreso de subrutina

2

RETI

Relativa

Regreso de Interrupción

 

DJNZ Rn, Etiq Directa, Etiq

Dirección relativa, directa o registro.

Disminuye el registro que tiene como origen, compara el registro y si es diferente salta a la etiqueta.

2

CJNE Dest, Orig, Etiq

Cualquiera de Rn o registro, directa o dato, etiqueta.

Compara el registro destino con el origen, si es diferente de cero entonces salta a la etiqueta Etiq.

2

REGISTROS Y FUNCIONES ESPECIALES.

PSW (PALABRA DE ESTADO DEL PROGRAMA)

Dirección

D7h

D6h

D5h

D4h

D3h

D2h

D1h

D0h

Bit

7

6

5

4

3

2

1 0

 

Bandera

CY

AC

FO

RS1

RS0

OV

 

- P