SET DE INSTRUCCIONES DE ASSEMBLER ADDLW ADD Literal to W ADDWF ADD W to F Sintaxis ADDLW k Sintaxis ADDWF f, d C
Views 91 Downloads 2 File size 128KB
SET DE INSTRUCCIONES DE ASSEMBLER ADDLW
ADD Literal to W
ADDWF
ADD W to F
Sintaxis
ADDLW k
Sintaxis
ADDWF f, d
Codificación
11
111x kkkk kkkk
0001 11df Codificación 00
Palabras, Ciclos
1, 1
Operación
W + k -> W
Bit de estado
C, DC, Z Añade el contenido de W al contenido de k, y almacena el resultado en W
Descripción Atención: Esta instrucción no existe en los Pic 16c5X
Palabras, Ciclos
ffff
0111 dfff ffff
1, 1 W + f -> f si d=1
Operación W + f -> W si d=0 Bit de estado
C, DC, Z
Añade el contenido de W al contenido de f, y Descripción almacena el resultado en W si d=0, y en f si d=1
ANDLW
AND Literal and W
ANDWF
AND W with F
Sintaxis
ANDLW k
Sintaxis
ANDWF f, d
1110 kkkk kkkk Codificación 11 1001 kkkk Kkkk
0001 01df ffff Codificación 00 0101 dfff ffff
Palabras, Ciclos
1, 1
Palabras, Ciclos
1, 1
Operación
W AND k -> W
Bit de estado
Operación
Z
W AND f -> f si d=1 W AND f -> W si d=0
Bit de estado
Z
Descripción Efectúa un AND lógico
entre el contenido de W y el literal k, y lo almacena en W
Efectúa un AND lógico entre el contenido de W y el contenido de Descripción f, y almacena el resultado en W si d=0, y en f si d=1
BCF
Bit Clear F
BSF
Bit Set F
Sintaxis
BCF f, b
Sintaxis
BSF f, b
0100 bbbf ffff Codificación 01 00bb bfff ffff
0101 bbbf ffff Codificación 01 01bb bfff ffff
Palabras, Ciclos
1, 1
Palabras, Ciclos
1, 1
Operación
0 -> b(f)
Operación
1 -> b(f)
Bit de estado
Ninguno
Bit de estado
Ninguno
Descripción
Pone a cero el bit numero b de f
Descripción
Pone a uno el bit numero b de f
BTFSC
Bit Test, Skip If Clear
Sintaxis
BTFSC f, b
0110 bbbf ffff Codificación 01 10bb bfff ffff
Palabras, Ciclos
1, 1 o 2
Operación
Salta si b(f)=0
Bit de estado
Ninguno
BTFSS
Bit Test, Skip If Set
Sintaxis
BTFSS f, b
Codificación
0111 bbbf ffff 01 11bb bfff ffff
Palabras, Ciclos
1, 1 o 2
Operación
Salta si b(f)=1
Bit de estado
Ninguno
Descripción Si el bit numero b de f esta en uno, la instrucción que
Si el bit numero b de f es nulo, la instrucción que sigue a esta se ignora y se trata Descripción como un NOP. En este caso, y solo en este caso, la instrucción BTFSC precisa dos ciclos para ejecutarse.
sigue a esta se ignora y se trata como un NOP. En este caso, y solo en este caso, la instrucción BTFSC precisa dos ciclos para ejecutarse.
CALL
Subrutina Call
CLRF
Clear F with F
Sintaxis
CALL k
Sintaxis
CLRF f
1001 kkkk kkkk Codificación 10 0kkk kkkk kkkk
Palabras, Ciclos
1, 2 En el caso de los 16c5X:
Operación
Bit de estado
PC + 1 -> Pila, k -> PC(0-7), 0 -> PC(8), PA2 a PA0 -> PC(9-11) En el caso de los 16c64, 71, 74, 84: PC + 1 -> Pila, k -> PC(0-10), PCLATH(3,4) -> PC(11,12) Ninguno
Descripción Guarda la dirección de vuelta en la pila y despues llama a la
0000 011f ffff Codificación
00
0001 1fff ffff
Palabras, Ciclos
1, 1
Operación
00 -> f
Bit de estado
Z
Pone el contenido de f Descripción a cero y activa el bit Z.
subrutina situada en la dirección cargada en el PC. Atención: El modo de calculo de la dirección difiere según la familia PIC utilizada. También hay que posicionar bien PA2, PA1, PA0 (16c5X) o el registro PCLATH (en los demas PIC), antes de ejecutar la instrucción CALL
CLRW
Clear W register
CLRWDT
Clear Watchdog Timer
Sintaxis
CLRW
Sintaxis
CLRWDT
0000 0100 0000 Codificación 00 0001 0xxx xxxx
0000 0000 0100 Codificación 00 0000 0110 0100
Palabras, Ciclos
1, 1
Palabras, Ciclos
1, 1
Operación
00 -> W
Bit de estado
Z
Operación
00 -> WDT y 0 -> predivisor del temporizador
Descripción
Pone el registro W a cero y activa el bit Z
Bit de estado
1 -> TO y 1 -> PD
Pone a cero el registro contador del Descripción temporizador watchdog, asi como el predivisor
COMF
Complement F
DECF
Decrement F to F
Sintaxis
COMF f, d
Sintaxis
DECF f, d
Codificación Palabras, Ciclos
0010 01df ffff 00 1001 dfff ffff
1, 1 ~f -> f su d=1
Operación
0000 11df ffff Codificación 00 0011 dfff ffff
Palabras, Ciclos
1, 1 f - 1 -> f si d=1
~f -> W si d=0
Operación f - 1 -> W si d=0
Bit de estado
Z
Hace un complemento de f bit a bit. El resultado lo almacena Descripción de nuevo en f si d=1 (borra el anterior), o en W si d=0 (f no varía)
Bit de estado
Z
Decrementa el contenido de f en una Descripción unidad. El resultado se guarda en W si d=0 (f no varia), y en f si d=1
DECFSZ
Decrement F, Skip If Zero
GOTO
Salto Incondicionalwith F
Sintaxis
DECFSZ f, d
Sintaxis
GOTO k
0010 11df ffff Codificación 00 1011 dfff ffff
101k kkkk kkkk Codificación 10 1kkk kkkk kkkk
Palabras, Ciclos
1, 1(2)
Palabras, Ciclos
1, 2
Operación
f - 1 -> f si d=1
Operación
En el caso de los 16c5X:
f - 1 -> W si d=0 Bit de estado
Ninguno Decrementa el contenido de f en una unidad. El resultado se guarda en W si d=0 (f no varia), y en f si d=1
Descripción
Si el reusltado es nulo, se ignora la siguiente instrucción y en este caso la instrucción dura dos ciclos.
INCF
Increment F
Sintaxis
INCF f, d
Codificación Palabras, Ciclos
k -> PC(0-8), PA2 PA1, PA0 -> PC(9-11) En el caso de los 16c64,71,74 y 84: k -> PC(0-10), PCLATH(3,4) -> PC(11,12)
0010 10df ffff 00 1010 dfff ffff
Bit de estado
LLama a la subrutina situada en la dirección cargada en el PC Atención: El modo de cálculo de la dirección difiere según la familia de PIC utilizada. Descripción También hay que posicionar correctamente PA2, PA1, PA0 (16c5X) o el registro PCLATH (en los demas PIC) antes de ejecutar la instrucción GOTO
INCFSZ
Increment F, Skip if Zero
Sintaxis
INCFSZ f, d
Codificación 1, 1
Ninguno
Palabras,
0011 11df ffff 00 1111 dfff
1, 1(2)
ffff
f + 1 -> f si d=1 Operación
Ciclos f + 1 -> f si d=1
f + 1 -> W si d=0 Operación
Bit de estado
Z
Incrementa el contenido de f en una unidad. El resultado se Descripción almacena de nuebo en f si d=1 y en W si d=0(en este caso f no varía)
IORLW
Inclusive OR Literal With W
Sintaxis
IORLW k
1101 kkkk kkkk Codificación 11 1000 kkkk kkkk
Palabras, Ciclos
1, 1
Operación
W OR k -> W
Bit de estado
Z
Descripción Efectúa un OR lógico inclusivo entre el
Bit de estado
f + 1 -> W si d=0 En ambos casos: Salto si f+1=0 Ninguno
Incrementa el contenido de f en una unidad. El resultado se guarda de nuevo en f si d=1 y en w si d=0 (en este caso f no Descripción varia). Si el resultado es nulo, se ignora la siguiente instrucción y en este caso, esta instrucción dura dos ciclos
IORWF
Inclusive OR W With f
Sintaxis
IORWF f, d
0001 00df ffff Codificación 11 0100 dfff
Palabras, Ciclos Operación
ffff
1, 1 W OR f -> f si d=1 W OR f -> W si d=0
Bit de estado
Z
Descripción Efectúa un OR lógico
contenido de W y el literal K, y almacena el resultado en W
inclusivo entre el contenido de W y el contenido de f, y almacena el resultado en f si d=1 o en W si d=0
MOVF
Move F
MOVLW
Move Literal to W with F
Sintaxis
MOVF f, d
Sintaxis
MOVLW k
Codificación Palabras, Ciclos
0010 00df ffff 00 1000 dfff
ffff
1, 1 f -> f si d=1
Operación
Bit de estado
f -> W si d=0
1100 kkkk kkkk Codificación 11 00xx kkkk kkkk
Palabras, Ciclos
1, 1
Operación
k -> W
Bit de estado
Ninguno
Descripción Carga W con el literal k Z Pone el contenido de f en f si d=1 o f en W si d=0
Atención: El desplazamiento de f en Descripción f que pareceria inutil, permite comprobar el contenido de f con respecto a cero ya que esta instucción actúa sobre el bit Z
MOVWF
Move W to F
NOP
No Operation
Sintaxis
MOVWF f
Sintaxis
NOP
Codificación
0000 001f ffff 00 0000 1fff ffff
Palabras, Ciclos
1, 1
Operación
W -> f
Bit de estado
Ninguno
Carga f con el Descripción contenido de W
OPTION
Load Option Register
Sintaxis
Option
0000 0000 0010 Codificación 00 0000 0110 0010
Palabras, Ciclos
1, 1
Operación
W -> OPTION
Bit de estado
Ninguno
Descripción Carga el registro OPTION con el contenido de W
0000 0000 0000 Codificación 00 0xx0 0000
Palabras, Ciclos
1, 1
Operación
Ninguna
Bit de estado
Ninguna
Consume tiempo de la maquina y ocupa un Descripción lugar en la memoria de programa.
RETFIE
Return From Interrupt
Sintaxis
RETFIE 00 0000 0000 1001
Codificación Palabras, Ciclos
1, 2
Operación
Pila -> PC, 1 -> GIE
Bit de estado
Ninguno
Descripción Carga el PC con el valor que se encuentra en la parte superior de la pila, asegurando asi la vuelta de la interrupción. Pone a
1 el bit GIE, con el fin de autorizar de nuevo que se tengan en cuenta las interrupciones
Atención: Esta instrucción no debe utilizarse en otros circuitos que no sean los PIC 16c5x. Sin embargo, es correctamente interpretada por los circuitos 16c64, 71, 74, 84 con el fin de asegurar una compatibilidad ascendente
Atención: Esta interrupción dura dos ciclos Esta instrucción no existe para los PIC 16c5X
RETLW
Return Literal to W
Sintaxis
RETLW k
Codificación
1000 kkkk kkkk 11 01xx kkkk kkkk
Codificación
Palabras, Ciclos
1, 2
Palabras, Ciclos
1, 2
Operación
k -> W, Pila -> PC
Operación
Pila -> PC
Bit de estado
Ninguno
Bit de estado
Ninguno
Descripción Carga W con el literal k, y después carga el PC con el valor que se encuentra en la parte superior de la pila, efectuando asi un retorno de subrutina
RETURN
Return from Subroutinewith F
Sintaxis
RETURN 00 0000 0000 0000
Descripción Carga el PC con el valor que se encuentra en la parte superior de la pila, efectuando asi una vuelta a la subrutina. Se trata de la instrucción RETLW simplificada
Atención: Esta instrucción dura dos ciclos
Atención:Esta instrucción dura dos ciclos Esta instrucción no existe en los PIC 16c5X
RLF
Rotate Left F through Carry
RRF
Rotate Right F through Carry
Sintaxis
RLF f,d
Sintaxis
RRF f, d 0011 00df ffff 00 1100 dfff ffff
0011 01df ffff Codificación 00 1101 dfff ffff
Codificación
Palabras, Ciclos
1, 1
Palabras, Ciclos
1, 1
Operación
ver descr.
Operación
Ver descr.
Bit de estado
C
Bit de estado
C
Rotación de un bit a la izquierda del contenido de f, pasando por el bit de Descripción acarreo C. Si d=1 el resultado se almacena en f si d=0 el resultado se almancena en W
SLEEP
Sleep
Sintaxis
SLEEP
Rotación de un bit a la derecha del contenido de f, pasando por el bit de Descripción acarreo C. Si d=1 el resultado se introduce en f, si d=0 el resultado se amacena en W
SUBLW
Substract W from Literal
Sintaxis
SUBLW k
0000 0000 0011 Codificación 00 0000 0110 0011
Palabras, Ciclos
1, 1
Operación
0 -> PD, 1 -> TO, 00 -> WDT, 0 -> Predivisor del WDT
Bit de estado
PD, TO Pone el circuito a dormir con parada del oscilador. Su consumo es inferior.
Descripción
Codificación
11
110x kkkk kkkk
Palabras, Ciclos
1, 1
Operación
k - W -> W
Bit de estado
C, DC, Z
Descripción
Sustrae el contenido de W del literal k, y almacena el resultado en W. La sustracción se realiza en complemento a dos Atención: Esta instrucción no existe en los Pic 16c5X
Atención: Use esta instrucción con mucho cuidado, pues puede provocar que el micro no despierte si no se ha seteado correctamente.
SUBWF
Substract W from F
SWAPF
Swap F to F
Sintaxis
SUBWF f, d
Sintaxis
SWAPF f, d
Codificación
0011 11df ffff 00 1110 dfff ffff
Palabras, Ciclos
1, 1
0000 10df ffff Codificación 00 0010 dfff ffff Palabras, Ciclos
1, 1
Operación
f - W -> f si d=1
Operación
f(0-3) -> f(4-7) y f(4-7) -> f(0-3)
f - W -> W si d=0 Bit de estado
C, DC, Z
Sustrae el contenido de W del contenido de f, y almacena el Descripción resultado en W si d=0 y en f si d=1. La sustracción se realiza en complemento a dos
TRIS
Load TRIS Register
Sintaxis
TRIS f
0000 0000 0fff Codificación 00 0000 0110 0fff
Palabras, Ciclos
1, 1
Operación
W -> registro TRIS del puerto f
Bit de estado
Resultado -> f si d=1 Resultado -> W si d=0
Ninguno
Descripción Carga el contenido de W en el registro TRIS del puerto f. Atención: Esta instrucción no debe utilizarse en otros circuitos que no sean los Pic 16c5X. No obstante, es correctamente
Bit de estado
Ninguno
Intercambia los cuatro bit de mayor peso por los cuatro de menor Descripción peso de f, y almacena el resultado en W si d=0, y en f si d=1
XORLW
Exclusive OR Literal With W
Sintaxis
XORLW k
1111 kkkk kkkk Codificación 11 1010 kkkk kkkk
Palabras, Ciclos
1, 1
Operación
W OR (Exclusivo) k -> W
Bit de estado
Z
Efectúa un OR lógico exclusivo entre el contenido de W y el Descripción contenido del Literal K y almacena el resultado en W
interpretada por los circuitos 16c64, 71, 74, 84, con el fin de asegurar una compatibilidad ascendente
XORWF Exclusive Or W with F Sintaxis XORWF f,d 0001 Codifica 00 ción
10df 0110
ffff dfff
ffff
Palabras 1, 1 , Ciclos Operaci ón
W OR (Exclusivo) f -> f si d=1 W OR (Exclusivo) f -> W si d=0
Bit de Z estado
Descrip Efectúa un Or lógico exclusivo entre el ción contenido de W y el contenido de f y almacena el resultado en f si d=1 o en W si d=0