Sie sind auf Seite 1von 2

UNISINOS

Conjunto de Instrues PIC18

ENGENHARIA ELTRICA.
prof. Marcos Zuccolotto

Conjunto de Instrues PIC 18


Notao: d : destino do resultado da operao ; d=0 -> W ; d=1 -> f f : registrador utilizado na operao a : mapeamento de memria utilizado : a=0 -> Acess Bank; a=1 -> BSR b : posio (endereo) do bit no registrador k : constante (f): contedo do registrador f

Manipulao de registradores :
Mnemnico CLRF f,a LFSR f,k MOVF MOVWF MOVLB MOVLW MOVFF RLCF RLNCF RRCF RRNCF SWAPF f,d,a f,a k k fs,fd f,d,a f,d,a f,d f,d f,d,a Descrio Limpa registrador f | (f) 0 Carrega constante k no registrador FSR(f) instruo de duas words Copia contedo do registrador f para o destino d=0 : (W) (F) d=1 : (f) (f) Copia contedo de W para f | (f) (W) Carrega k no registrador BSR <3:0> Carrega k em W | (W) k Copia contedo de fspara fd | (fd) (fs) Desloca bits de f para a esquerda, utilizando o bit de carry Desloca bits de f para a esquerda, sem utilizar o bit de carry Desloca bits de f para a direita, utilizando o bit de carry Desloca bits de f para a direita, sem utilizar o bit de carry Troca os 4 bits mais significativos pelos 4 bits menos significativos do registrador f Flags afetados Z,N --Z,N --------C,Z,N Z,N C,Z,N Z,N ---

Manipulao de Bits
Mnemnico BCF f,b,a BSF f,b,a BTG f,b,a Descrio Limpa o bit b do registrador f Seta o bit b do registrador f Inverte (toggle) o bit b do registrador f Flags afetados -------

Operaes Aritmticas
Mnemnico ADDWF f,d,a ADDWFC f,d,a ADDLW k DAW SUBFWB f,d,a SUBWF f,d,a SUBWFB f,d,a SUBLW k MULWF f,a MULLW k NEGF f,a DECF f,d,a INCF f,d,a Descrio Soma W a f | d=0; (W) (W)+(f) | d=1; (f) (W)+(f) Soma W a f, inclui vai-um | d=0; (W) (W)+(f)+c | d=1; (f) (W)+(f)+c Soma k a W | (W) (W)+ k Ajuste decimal de W Subtrai f de W , inclui vem-um | d=0; (W) (W) (f) - c | d=1; (f) (W) (F)- b Subtrai W de f | d=0; (W) (f) - (W) | d=1; (f) (f) - (W) Subtrai W de f, inclui vem-um | d=0; (W) (f) (W) - c | d=1; (f) (f) (W) - c Subtrai W de k | (W) k (W) Multiplica W por f, armazena resultado em PRODH:PRODL | (PRODH:PRODL) (f) x (W) Multiplica W por k, armazena resultado em PRODH:PRODL | (PRODH:PRODL) (W) x k Nega (muda o sinal d) o valor de f | (f) (f) Decrementa f | d=0; (W) (f) -1 | d=1; (f) (f) 1 Incrementa f | d=0; (W) (f) +1 | d=1; (f) (f) +1 Flags afetados C,DC,Z,OV,N C,DC,Z,OV,N C,DC,Z,OV,N C,DC,Z,OV,N C,DC,Z,OV,N C,DC,Z,OV,N C,DC,Z,OV,N ----C,DC,Z,OV,N C,DC,Z,OV,N C,DC,Z,OV,N

Operaes Lgicas
Mnemnico COMF f,d,a ANDWF f,d,a ANDLW k IORWF f,d,a IORLW k XORWF f,d,a XORLW k Descrio Complemento de f W e f | d=0; (W) (W) e (f) | d=1; (f) (W) e (f) W e k | (W) (W) e k W ou f | d=0; (W) (W) ou (f) | d=1; (f) (W) ou (f) W ou k | (W) (W) ou k W xou f | d=0; (W) (W) xou (f) | d=1; (f) (W) xou (f) W xou k | (W) (W) xou k Flags afetados Z,N Z,N Z,N Z,N Z,N Z,N Z,N

UNISINOS
Conjunto de Instrues PIC18
Desvio Incondicional
Mnemnico BRA n GOTO CALL k k,s

ENGENHARIA ELTRICA.
prof. Marcos Zuccolotto

RCALL n RETURN s RETLW k RETFIE s

Descrio Desvia a execuo do programa n instrues (pra frente ou para trs, dependendo do sinal de n) Desvia a execuo do programa para o endereo k Chama subrotina localizada no endereo k. S=1 salva W,status e BSR nos registradores sombra Chama a subrotina localizada a n posies da instruo. Retorna da subrotina s=1 : restaura valores de W e Status a partir dos registradores sombra Retorna da subrotina com k armazenado em W Retorna da rotina de interrupo s=1 : restaura valores de W , status e BSR a partir dos registradores sombra

Flags afetados -------

----GIE/GIEH PEIE/PEIEH

Desvio Condicional
Mnemnico BC n BNC n BN n BNN n BOV n BNOV n BZ n BNZ n BTFSC f,b,a BTFSS f,b,a CPFSEQ f,a CPFSGT f,a CPFSLT f,a DECFSZ f,d,a DCFSNZ f,d,a INCFSZ f,d,a INFSNZ f,d,a TSTFSZ f,a Descrio Desvia se ocorreu vai-um/vem-um (carry/borrow) Desvia se no ocorreu vai-um/vem-um (carry/borrow) Desvia se negativo Desvia se positivo (no negativo) Desvia se ocorreu overflow Desvia se no ocorreu overflow Desvia se zero Desvia se diferente de zero Testa o bit b do registrador f, salta a prxima instruo se for zero Testa o bit b do registrador f, salta a prxima instruo se for um Compara f com W, salta a prxima instruo se igual Compara f com W, salta a prxima instruo se maior Compara f com W, salta a prxima instruo se menor Decrementa f e salta a prxima instruo se o resultado for zero d=0; (W) (f) -1 | d=1; (f) (f) 1 Decrementa f e salta a prxima instruo se o resultado for diferente de zero d=0; (W) (f) -1 | d=1; (f) (f) 1 Incrementa f e salta a prxima instruo se o resultado for zero d=0; (W) (f) -1 | d=1; (f) (f) +1 Incrementa f e salta a prxima instruo se o resultado for diferente de zero d=0; (W) (f) -1 | d=1; (f) (f) +1 Testa f e salta a prxima instruo se zero Flags afetados ---------

-----------------

Acesso a tabela
Mnemnico TBLRD* TBLRD*+ TBLRD*TBLRD+* TBLWT* TBLWT*+ TBLWT*TBLWT+* Descrio L da tabela L da tabela e incrementa ponteiro L da tabela e decrementa ponteiro Incrementa ponteiro e l da tabela Escreve na tabela Escreve na tabela e incrementa ponteiro Escreve na tabela e decrementa ponteiro Incrementa ponteiro e escreve na tabela Flags afetados -----------------

Manipulao de pilha
Mnemnico POP PUSH Descrio Descarta valor do topo da pilha (TOS) Armazena valor do PC+2 no topo da pilha (TOD) Flags afetados -----

Operaes Especiais
Mnemnico CLRWDT NOP SLEEP RESET Descrio Reseta o temporizador Co-de-guarda (Watchdog-timer) No opera gasta 1 ciclo de instruo Entra no modo de baixo consumo (Power Down) Reset do dispositivo por software Flags afetados TO, PD --TO, PD todos

Das könnte Ihnen auch gefallen