Beruflich Dokumente
Kultur Dokumente
Descripción: Si el bit "b" del registro "f" es 1, se salta una instrucción y se continúa
con la ejecución.
Ejemplo: COM BTFSS REG,6
FALSE GOTO PROCESA_X
TRUE °
Antes de la instrucción: PC= Dirección (COM_)
Después de la instrucción: SI REG <6> = 0
PC= Dirección
(FALSE)
SI REG <6> = 1
PC= Dirección
(TRUE)
CALL Salto a subrutina
Descripción: Esta instrucción borra tanto el "watchdog" como el prescaler. Los bits
TO y PD del registro de estado se ponen a "1".
Ejemplo: CLRWDT
Después de la instrucción: Contador WDT = 0
Prescaler WDT = 0
Bit de estado TO = 1
Bit de estado PD = 1
COMF Complementa f
Descripción: El contenido del registro "f" se rota una posición a la izquierda. El bit
de más peso pasa al carry y el carry se introduce por el bit de menos
peso de "f". Si "d" es 0, el resultado se coloca en el registro W. Si "d"
es 1, el resultado queda en el registro "f".
Ejemplo: RLF REG1,0
Antes de la instrucción: REG1 = 11100110
C=0
Después de la instrucción: REG1 = 11100110
W = 11001100
C=1
RRF Rota f a la derecha
Descripción: El contenido del registro "f" se rota a la derecha. El bit de menos peso
de "f" pasa al flag carry. El carry se coloca en el bit de más peso de "f".
Si "d" es 0, el resultado se almacena en el registro W. Si "d" es 1, el
resultado se almacena en "f".
Ejemplo: RRF REG1
Antes de la instrucción: REG1 = 11100110
C=0
Después de la instrucción: REG1 = 11100110
W = 01110011
C=0
SLEEP Pasa a estado de reposo
Descripción: Resta, por el método del complemento a 2, el contenido del registro "f"
menos el contenido del registro W. Si "d" es 0, el resultado se
almacena en el registro W. Si "d" es 1, el resultado se almacena en el
registro "f". Si el resultado es negativo, el carry se pone a 0.
Ejemplo: SUBWF REG,1
Antes de la instrucción: REG = 1
W=2
Después de la instrucción: REG = 0xFF
W = 0xFF
SWAPF Intercambio de f
Descripción: Los cuatro bits de más peso del registro "f" se intercambian con los
cuatro bits de menos peso del mismo registro. Si "d" es 0, el resultado
se coloca en el registro W. Si "d" es 1, el resultado queda en el registro
"f".
Ejemplo: SWAPF REG,0
Antes de la instrucción: REG = 0x5A
Después de la instrucción: REG = 0x5A
W = 0xA5
TRIS Carga registro TRIS