Está en la página 1de 9

Descripcion de Instrucciones

Saltos incondiciones
GOTO
Ejemplo:
inicio
movlw 0x30
movwf STATUS
movlw b'11111110'
movwf TRISB
goto inicio

SALTOS CONDICIONALES - BIT


BTFSC f,b (Bit testt f, skip if clear)
(b=bit numero ) de f =1 ; la instruccion que sigue
se ejecuta
(b=bit numero ) de f =0 ; la instruccion que sigue
se ignora

Ejmp.
btfsc portb,1
Falso goto xxx
verdad

SALTOS CONDICIONALES - BIT


BTFSS f,b (Bit testt f, skip if set)
(b=bit numero ) de f =0 ; la instruccion que sigue
se ejecuta
(b=bit numero ) de f =1 ; la instruccion que sigue
se ignora

Ejmp.
btfss portb,1
Falso goto xxx
verdad

SALTOS CONDICIONALES - REG


DECFSZ f,d (decrement f, skip if 0)
d=0 ; f no varia (resultado se almacena en W)
d=1 ; decrementa y cmp = 0 la instrucc que sigue
se ignora
Cmp ==! 0 , se ejecuta la instrucc que sigue

Ejmp.
no_ cero

decfsz contador,1 ; f
goto no_cero
Si_cero ----------

SALTOS CONDICIONALES - REG


INCFSZ f,d (increment f, skip if 0)
d=0 ; f no varia (resultado se almacena en W)
d=1 ; incrementa y cmp = 1111111 -- = 0 la
instrucc que sigue se ignora
Cmp ==! 0 , se ejecuta la instrucc que sigue

Ejmp.
no_ cero

decfsz contador,1 ; f
goto no_cero
Si_cero ----------

comparacion entre registers


REG = 0
EJEM
MOVF
REG,F
BTFSS
STATUS,Z
GOTO
NOESCERO
ESCERO ---------------------NOESCERO -------------

comparacion entre registers


REG1 = REG2
EJEM
MOVF
REG1,W
SUBWF
REG2,W
BTFSC
STATUS,Z
GOTO
IGUALES
IGUALES ---------------------NOIGUALES -------------

comparacion entre registers


REG1 >, <, = REG2
EJEM
MOVF
REG2,W
SUBWF
REG1,W ; REG1-REG2 ---W
BTFSC
STATUS,C
; C=1 (+), REG1>=REG2
GOTO MENOR
MAYORIGUAL
---------------------MENOR
------------; C=0 , REG1<REG2

También podría gustarte