4 ProgramacionII PDF
4 ProgramacionII PDF
4 ProgramacionII PDF
CAPITULO 4
_________________________________________________________________________
ITMAR, Mazatlán 36 Ing. Rufino J. Domínguez Arellano
El Microcontrolador 8051 CAP 4
Ejemplos:
A) Poner el Acarreo a 1 si el bit 0 del puerto P1 es ‘1’, el bit 7 del acumulador es ‘1’
y la bandera OV = 0.
B) Efectuar la operación XOR entre los bits P0.0 y P1.1, dejando el resultado en
P2.7.
_________________________________________________________________________
ITMAR, Mazatlán 37 Ing. Rufino J. Domínguez Arellano
El Microcontrolador 8051 CAP 4
SJMP rel (Short Jump). La dirección destino del salto viene dada por un
«offset relativo», igual que en las instrucciones de salto booleanas. La instrucción
tiene dos bytes, correspondientes al código de operación y al byte de offset
relativo. El rango del salto está limitado a -128 y+ 127 bytes relativos al primer byte
siguiente a la instrucción de salto.
PC ← (PC) + 2
PC ← (PC) + rel
LJMP addr16 (Long Jump). La dirección destino del salto viene dada
por una constante de 16 bits. La instrucción está formada por 3 bytes. 1 byte para
el código de operación y 2 para la dirección del salto. Por tanto, la dirección de
destino está ubicada dentro del área de los 64K de la memoria de programa.
PC ← addr16
AJMP addr11 (4bsolute Jump). La dirección destino del salto viene dada
por una constante de 11 bits. La instrucción tiene 2 bytes, uno para el código de
operación que también contiene en si misma 3 de los 11 bits de direcciones, y otro
byte que contiene los 8 bits bajos de la dirección de destino. Por tanto, el destino
del salto tiene que estar comprendido dentro del bloque de los 2 KB referenciado
respecto a la siguiente instrucción a la del salto.
PC ← (PC) + 2
(PC.10-0) ← dirección de la página
RL A ; Multiplico por 2.
---
_________________________________________________________________________
ITMAR, Mazatlán 38 Ing. Rufino J. Domínguez Arellano
El Microcontrolador 8051 CAP 4
_________________________________________________________________________
ITMAR, Mazatlán 39 Ing. Rufino J. Domínguez Arellano
El Microcontrolador 8051 CAP 4
Ejemplos:
MOV A, P0
LAZO: ----------------
----------------
----------------
CJNE A, 7F, LAZO
Si de los dos bytes del campo de operandos, el primero es menos que el segundo,
entonces el acarreo (C) se pone a ‘1’. Si el primer byte es mayor o igual que el segundo, el
acarreo toma el valor ‘0’.
_________________________________________________________________________
ITMAR, Mazatlán 40 Ing. Rufino J. Domínguez Arellano
El Microcontrolador 8051 CAP 4
_________________________________________________________________________
ITMAR, Mazatlán 41 Ing. Rufino J. Domínguez Arellano
El Microcontrolador 8051 CAP 4
_________________________________________________________________________
ITMAR, Mazatlán 42 Ing. Rufino J. Domínguez Arellano
El Microcontrolador 8051 CAP 4
_________________________________________________________________________
ITMAR, Mazatlán 43 Ing. Rufino J. Domínguez Arellano
El Microcontrolador 8051 CAP 4
_________________________________________________________________________
ITMAR, Mazatlán 44 Ing. Rufino J. Domínguez Arellano
El Microcontrolador 8051 CAP 4
_________________________________________________________________________
ITMAR, Mazatlán 45 Ing. Rufino J. Domínguez Arellano
El Microcontrolador 8051 CAP 4
_________________________________________________________________________
ITMAR, Mazatlán 46 Ing. Rufino J. Domínguez Arellano