





























Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Documento que apresenta as instruções assembly para o microcontrolador pic16f que operam com literais e de controle, incluindo addlw, sublw, andlw, iorlw, xorlw, movlw, retlw, call, goto, retfie, clrwdt e sleep. Descreve também o formato da instrução, o resultado das operações com literais e os indicadores afetados.
Tipologia: Notas de aula
1 / 37
Esta página não é visível na pré-visualização
Não perca as partes importantes!






























e^ instruções^1 Instruções^ que^ operam^ com^ literais,
e^ instruções de controleReferência para a aula: 1 – Apostila:^ Instruções e Diretivas [Xerox].^ Prof.: Edgar Campos Furtado^ [email protected]^ Sala: 217.
Instruções que operam com literais –
As ações implementadas por essas instruções realizam: • Operações^ de^ Lógica^ (AND,^ IOR,^ XOR,^ SWAP,^ COM)^ entre^ umliteral e o conteúdo do registrador W; AULA-^
2
-^ Operações de Aritmética^ (ADD, SUB, DEC, INC, CLR, RL, RR)entre um literal e o conteúdo do registrador W; •^ Movimentação de dados^ (MOV) movimentação de um literal parao registrador de trabalho W;UFSJ – CAP© Edgar C. Furtado
Instruções que operam com literais: Formato da instrução OPcode:
Instruções^ 0000 0000– 0^2 d LITERAL:^ ∶ AULA-07^4 OPcode: UFSJ – CAP© Edgar C. Furtado
1111 1111– 255^2 d O resultado dasoperações com literaisé sempre armazenadoem W.
Instruções que operam com literais: Caminho de dados
Pendências docaminho de dados: •^ Falta saída do^ AULA-
5 Literal docontrole; • Caminho noMultiplexadorpara o literalchegar à ULA.UFSJ – CAP© Edgar C. Furtado
do^ registrador^ W,^ e Instrução:^ ADDLW^ k^ |^ w^ armazena o resultado no registrador W.• INDICADORES afetados: Z, DC e C:
Z = 0^ ^ Resultado não foi nulo;Z = 1^ ^ Resultado nulo;DC = 0^ ^ Não houve transbordo do 3o para o 4o bit do registrador;DC = 1^ ^ Houve transbordo do 3o para o 4o bit do registrador;C = 0^ ^ Número menor ou igual a 255UFSJ – CAP© Edgar C. Furtado
; 10 C = 1^ ^ Número maior que 255.^10
Exemplos:^ ADDLW^ B’00000001’
0xFFh^ =^11111111 0x01h^ =^00000001 0x100h=100000000=256^10 ADDLW B’00000001’
Exemplos:^ ADDLW^ B’00010000’
0xF1h^ =^11110001 0x10h^ =^00010000 0x101h=100000001=257^10 ADDLW B’00010000’
W^ Z^ DC^ C antes 1111 0001^ x^ X^ X depois 0000 0001^0 0 UFSJ – CAP© Edgar C. Furtado
Exemplo:^ SUBLW^ B’00010001’^ SUBWF B’00010001’
Caso em que o conteúdo de W é menor ou igual ao de F:^ AULA- depois^ 0000 0001^0 1 1^10 Exemplo:^ SUBLW^ B’00001001’^ SUBLW B’00001001’
W^ Z^ DC^ C antes 0000 1001^ x^ x^ x depois 0000 0000^1 1 UFSJ – CAP© Edgar C. Furtado
0x09h^ =000010010x09h^ =000010010x00h^ =
Exemplo:^ SUBLW^ B’00001111’^ SUBLW B’00001111’
Caso em que o conteúdo de W é maior que o de F:^ AULA- depois^ 1111 1111^0 1 0^11 Como o resultado é negativo, a resposta fornecida pela ULA está na formade complemento de dois, ou seja, 11111111.Revertendo o resultado na forma de complemento de 2, tem-se: 11111111 ^ 00000000 (em complemento de 1) UFSJ – CAP© Edgar C. Furtado
^ 00000001 = 1d
Instrução:^ XORLW^ k^ |^ w • Altera INDICADOR Z (resultado nulo=1, contrário =0);
13 Exemplo:^ XORLW^ B’11010111’^ XORLW B’11010111’
W^ Z antes 1101 0111^ x depois 0000 0000^1 UFSJ – CAP© Edgar C. Furtado
W^ =^1101 0111 XOU K^ =^1101 0111 W^ =^0000
Instrução:^ MOVLW^ k^ |^ w • Nenhum INDICADOR é alterado;
14 Exemplo:^ MOVLW^ B’10000001’^ MOVLW B’10000001’
W^ Z^ DC^ C antes x^ x^ x^ x depois 1000 0001^ x^ x^ x UFSJ – CAP© Edgar C. Furtado
Formato das Instruções de máquina de desvio incondicional:
16 OPcode:^ UFSJ – CAP© Edgar C. Furtado Literal: Número de 0d a 2047d
Os desvios na execução do código podem ocorrer:^ 1ª Instrução2ª Instrução3ª Instrução^ Sim^ Desvio condicional
1ª Instrução2ª Instrução3ª Instrução^ Sim ou Não Desvio incondicional^17 Não 4ª Instrução5ª Instrução6ª Instrução7ª Instrução UFSJ – CAP© Edgar C. Furtado 4ª Instrução5ª Instrução6ª Instrução7ª Instrução GOTO^ CALL BTFSC^ DECFSZSem Retorno:BTFSS^ INCFSZ
Sem Retorno^ Com Retorno
Instrução de desvio^ incondicional com retorno
:^ CALL^ LABEL 1. A CPU armazena^ o^ conteúdode PC+1^ na^ posição^ superiorda pilha; 2. Armazena^ o^ endereço^ do^19 UFSJ – CAP© Edgar C. Furtado
2.^ Armazena^ o^ endereço^ do^ desvio no registrador PC, nosbits 0 a 13;3. O retorno da chamada de umasub-rotina^ é^ realizado^ pelasfunções^ RETURN^ ou^ RETLW; −^ Nenhum Indicador é alterado.
Instruções implementadas em Hardware: •^ Orientadas a bits; •^ Orientadas a bytes; •^ Que operam com literais.
FLASH^ SRAM^ IR CONTROLE UFSJ – CAP© Edgar C. Furtado (^1013) (^0) (^8) I OE^113 STATUS 14 #R L/E^0 8^88311020 W (^1) #Rb d CO L (^078) 8 3 1 3