Microcontroladores - 35 instruções para PIC
A linguagem de programação Assembler do PIC 16F84 é composta por 35 instruções. As instruções são expressas na forma de mnemônicos. O mnemônico é composto por verbos e argumentos. Os verbos definem as ações que são completadas e especificadas pelos argumentos.
DESCRIÇÃO DAS INSTRUÇÕES
Como foi visto na tabela, as instruções estão divididas em 3 partes: Instruções orientadas a byte, instruções orientadas a bits e instruções de operações com controles e constantes.
ADDWF f,dFaz a soma entre W e f ( d = W + f). O valor de W será somado ao conteúdo do registro f. Se d = 1, o resultado será armazenado no registro. Se d = 0 será armazenado em W
Exemplo: Se W = 20 (decimal), e f(20h) = 15 (decimal)A instrução ADDWF 20h,0 - resultará W = 35
A instrução ADDWF 20h - resultará f(20h) = 35
ANDWF f,dFaz a operação lógica AND entre W e f (d = W AND f). A operação lógica será feita entre o conteúdo de W e o conteúdo do registro f. Se d = 1, o resultado será armazenado no registro. Se d = 0 será armazenado em W.
Exemplo : Se W = b'01011001', e f(0Ch) = b'00110111'
A instrução ANDWF 0Ch,0 - resultará em W = b'00010001'A instrução ANDWF 0Ch - resultará em f(0Ch) = b'00010001'
W = 01011001AND f(0Ch) = 00110111Resultado = 00010001
CLRF f
Zera o conteúdo do registro f indicado.
Exemplo: se TRISB = b'00101010'- A instrução CLRF TRISB - resulta em TRISB = b'00000000'
Fazendo o flag Z = 1
CLRW
Zera o conteúdo de W
Exemplo: se W = 0x3F- A instrução CLRW - resulta em W = 0x00
Fazendo o flag Z = 1
COMF f,dComplementa f. Os bits do registro f indicado serão complementados, ou seja, invertidos. Se d = 1, o resultado será armazenado no registro. Se d = 0 será armazenado em W
Exemplo: Se f(12h) = 2Bh = b'00101011'A instrução COMF 12h - resultará em f(12h) = D4h = b'11010100'
A instrução COMF 12h,0 - resultará em W = D4h , sem alterar o conteúdo o conteúdo do f(12h).
DECF f,dDecrementa f. Decrementa o conteúdo do registro f em -1 a cada instrução