Set De Instrucciones Microcontrolador PIC 16f886
NOTACION PARA NUMEROS
Decimal : D'100' ó .100
Hexadecimal : H'64' ó 0x64 ó 64
Octal : O'144'
Binario : B'01101100'
ASCII : A'C' ó 'C'
NOTACION PARA REGISTROS Y LITERALES
w : Registro W, similar al acumulador, es el registro de trabajo.·
f : Campo de 5 bits (fffff), contiene la dirección del banco de registros,
que ocupa el banco 0 del áreade datos. Direcciona uno de esos registros.
k : Representa una constante de 8 bits.·
d : Bit del código OP de la instrucción. Selecciona el destinodonde se guarda el
resultado de una operación. Si d=0, eldestino es W, y si d=1 el destino es f.
b : Determina la posición de un bit dentro de un registro de 8bits,
(o sea, tomará valores entre 0 y 7)
SIMBOLOS
a) [] : Opciones.
b) () : Contenido.c) => : Se asigna a
d) <> : Campo de bits de un registro.
e) E : Pertenece al conjunto
f) Label : Nombre de la etiqueta.
g) TOS : Cima de la pila con 8 niveles en la gama media.
h) PC : Contador de programa que direcciona la memoria de instrucciones.
FLAGS
Los Flags o banderas son marcadores, representados por bits dentro del registro STATUS
Z : Flag de cero, se pone a 1 cuando una operaciónlógica o aritmética da 0 (cero)
como resultado. En cualquier otro caso se pone a 0.
C : Flag de Carry, se pone a 1 cuando la operación que le afecta sobrepasa el
nivel de representación del procesador, en nuestro caso es de 8 BIT's , de esta
manera si sumamos a 0b11111111 un 0b00000011 el resultado sería 0b00000010
y el BIT de Carry pasaría a 1.
DC : Flag de carry del nibble inferior, este secomporta igual que el BIT de Carry,
solo que el límite de representación son los 4 bits inferiores, de esta manera si
tenemos 0b00001111 y sumamos 0b00000111, el resultado será 0b00010110 y
el BIT de DC se pone a 1, el BIT de Carry estará a 0 al no superarse los 8 bits
y el de Z a 0 al ser el número diferente de 0.
ADDLW
ADDWF
ANDLW
ANDWF
BCF
BSF
BTFSC
BTFSS
CALL
CLRF CLRW
CLRWDT
COMF
DECF
DECFSZ
GOTO
INCF
INCFSZ
IORLW
IORWF
MOVF
MOVLW
MOVWF
NOP
OPTION
RETFIE
RETLW
RETURN
RLF
RRF
SLEEP
SUBLW
SUBWF
SWAPF
TRIS
XORLW
XORWF
ADDLW
ADD Literal to W
Sintaxis
ADDLW k
Codificación
11
111x
kkkk
kkkk
Palabras, Ciclos
1, 1
Operación
W + k -> W
Bit de estado
C, DC, Z
Descripción
Añade el contenido de W al contenido dek, y almacena el resultado en W
Atención: Esta instrucción no existe en los Pic 16c5X
ADDWF
ADD W to F
Sintaxis
ADDWF f, d
Codificación
0001
11df
ffff
00
0111
dfff
ffff
Palabras, Ciclos
1, 1
Operación
W + f -> f si d=1 W + f -> W si d=0
Bit de estado
C, DC, Z
Descripción
Añade el contenido de W al contenido de f, y almacena el resultado en W si d=0, y en f si d=1ADDWF
ADD W to F
Sintaxis
ADDWF f, d
Codificación
0001
11df
ffff
00
0111
dfff
ffff
Palabras, Ciclos
1, 1
Operación
W + f -> f si d=1
W + f -> W si d=0
Bit de estado
C, DC, Z
Descripción
Añade el contenido de W al contenido de f, y almacena el resultado en W si d=0, y en f si d=1
ANDWF
AND W with F
Sintaxis
ANDWF f, d
Codificación
0001
01df
ffff
00
0101
dfff
ffff
Palabras, Ciclos
1, 1Operación
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 contenido de f, y almacena el resultado en W si d=0, y en f si d=1
BCF
Bit Clear F
Sintaxis
BCF f, b
Codificación
0100
bbbf
ffff
01
00bb
bfff
ffff
Palabras, Ciclos
1, 1
Operación
0 -> b(f)
Bit de estado
Ninguno
Descripción
Pone a cero el bit numero b de f
BSF
BitSet F
Sintaxis
BSF f, b
Codificación
0101
bbbf
ffff
01
01bb
bfff
ffff
Palabras, Ciclos
1, 1
Operación
1 -> b(f)
Bit de estado
Ninguno
Descripción
Pone a uno el bit numero b de f
BTFSC
Bit Test, Skip If Clear
Sintaxis
BTFSC f, b
Codificación
0110
bbbf
ffff
01
10bb
bfff
ffff
Palabras, Ciclos
1, 1 o 2
Operación
Salta si b(f)=0
Bit de estado
Ninguno
Descripción
Si el bit numero b de...
Regístrate para leer el documento completo.