Sistemas Microprogramados
Microcontroladores
Conjunto de Instruções
Prof. André Luis Roland Tancredo
Engenheiro da Computação e Pesquisador em Desenvolvimento
Tecnológico para Semicondutores pelo CNPq
Especialista em Microeletrônica
Professor do grupo Anhanguera Educacional nos cursos de Engenharia
da Computação e Tecnologia e Análise em Desenvolvimento de
Sistemas nas disciplinas Introdução à Organização de Computadores,
Circuitos Digitais e Sistemas Microprogramados
FA5 – Unidade Limeira/SP
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
Termos Utilizados
Para facilitar o aprendizado do set de instruções do PIC, é conveniente
entender corretamente os termos utilizados na construção dos nomes das
instruções e seus argumentos.
Work – trata-se de um registrador temporário para as operações da ULA. No
Assembler do PIC, ele é conhecido como W. Também é comum chamá-lo de
acumulador.
File – referência a um registrador (posição de memória) propriamente dito.
Utilizaremos a letra F para sua representação nos nomes de instruções e f
nos argumentos delas.
Literal – um número qualquer que pode ser escrito na forma decimal,
hexadecimal ou binária. Utilizaremos a letra L para sua representação nos
nomes de instruções e k nos argumentos delas.
Fonte: SOUZA, David Jose de. Desbravando o PIC. São Paulo: Erica.
Prof. André Luis Roland Tancredo
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
Termos Utilizados
Destino – o local onde deve ser armazenado o resultado da operação.
Existem somente dois destinos possíveis: F, que guardará o resultado no
próprio registrador passado como argumento, ou W, que colocará o
resultado em Work. Na verdade, na sintaxe das instruções, o destino deve
ser expresso pelos números 0 (W) e 1(F). No entanto, como veremos mais
adiante, as letras F e W são definidas no “include” para facilitar a
programação.
Bit – refere-se a um bit específico dentro de um byte. Utilizaremos a letra B
para sua representação nos nomes das instruções e b nos argumentos delas.
Teste – quando queremos testar o estado de um bit, para descobrirmos se
ele é zero ou um. Utilizaremos a letra T para representá-lo nos nomes das
instruções.
Skip – significa “pulo”, e é utilizado para criar, desvios, pulando a próxima
linha. Utilizaremos a letra S para representá-lo nos nomes das instruções.
Fonte: SOUZA, David Jose de. Desbravando o PIC. São Paulo: Erica.
Prof. André Luis Roland Tancredo
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
Termos Utilizados
Set – refere-se ao ato de setar um bit, isto é, torná-lo equivalente a UM.
Utilizaremos a letra S para representá-lo nos nomes das instruções.
Clear – refere-se ao “clear” de um bit, isto é, torná-lo equivalente a ZERO.
Utilizaremos a letra C para representá-lo nos nomes das instruções.
Zero – algumas instruções podem gerar desvios se o resultado da operação
efetuada for zero. Neste caso, utilizaremos a letra Z para indicar tal condição.
Todos os demais termos utilizados são específicos das ações realizadas pelas
instruções e são praticamente auto-explicativos.
Fonte: SOUZA, David Jose de. Desbravando o PIC. São Paulo: Erica.
Prof. André Luis Roland Tancredo
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
Instruções Básica
ADD: soma
AND: lógica “E”
CLR: limpar, zerar (clear)
COM: complemento
DEC: decremento de uma unidade
INC: incremento de uma unidade
IOR: lógica “OR”
MOV: mover, transferir para algum lugar
RL: rotacionar 1 bit para a esquerda
RR: rotacionar 1 bit para a direita
SUB: subtração
SWAP: inversão entre as partes alta e baixa de um registrador
XOR: lógica “OU exclusivo”
Fonte: SOUZA, David Jose de. Desbravando o PIC. São Paulo: Erica.
Prof. André Luis Roland Tancredo
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
A construção dos nomes das instruções
Com base nos termos anteriores torna-se fácil entender o significado de uma
instrução por meio do seu nome, pois ele é composto pela junção destes
termos.
Exemplo: desejamos decrementar o valor de um determinado registrador. A
instrução que fará isto é composta pelos termos referentes à ação que você
quer fazer:
Decrementar (DEC) um registrador (F) = DECF
De forma análoga:
DECFSZ = Decrementa (DEC) o registrador (F) e pula (S) se o resultado for
zero (Z)
Fonte: SOUZA, David Jose de. Desbravando o PIC. São Paulo: Erica.
Prof. André Luis Roland Tancredo
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
Grupos de Instruções
Organizamos todas as 35 instruções do 16F84 em quatro grupos, conforme
suas aplicações:
- Operações com registradores
- Operações com literais
- Operações com bits
- Controles
Fonte: SOUZA, David Jose de. Desbravando o PIC. São Paulo: Erica.
Prof. André Luis Roland Tancredo
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
Resumo
das
Instruções
Fonte: SOUZA, David Jose de. Desbravando o PIC. São Paulo: Erica.
Prof. André Luis Roland Tancredo
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
Resumo
das
Instruções
Fonte: SOUZA, David Jose de. Desbravando o PIC. São Paulo: Erica.
Prof. André Luis Roland Tancredo
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
Resumo
das
Instruções
Fonte: SOUZA, David Jose de. Desbravando o PIC. São Paulo: Erica.
Prof. André Luis Roland Tancredo
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
Atividade
Dado o trecho de programa abaixo, identificar seus objetivos quando
executado pelo PIC 16F84.
INIT
bsf STATUS,RP0
movlw b'00000000'
movwf TRISB
bcf STATUS,RP0
movfw STATUS
movwf PORTB
bsf STATUS,RP0
movfw OPTION_REG
bcf STATUS,RP0
movwf PORTB
goto INIT
end
Prof. André Luis Roland Tancredo
Março 2010
Sistemas Microprogramados
Conjunto de Instruções
Conjunto de Instruções
Atividade
Pesquisa pela estrutura de um programa em Assembler do PIC
16F84.
Prof. André Luis Roland Tancredo
Março 2010
Download

Prof. André Luis Roland Tancredo Engenheiro da