CONJUNTO DE INSTRUÇÕES

Documentos relacionados
Sistemas Microprocessados. sato<at>utfpr<dot>edu<dot>br

7. PROGRAMANDO O MICROCONTROLADOR. Microcontroladores - Prof: Demantova

Programação de Microprocessadores. Programação de Microprocessadores SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

As 5 partes fundamentais. Linguagem de Programação Pinagem Características Elétricas Ambiente de Desenvolvimento Integrado - IDE

Conjunto de Instruções do 8051

Prof. Adilson Gonzaga

SEL-614 MICROPROCESSADORES E APLICAÇÕES. Adilson Gonzaga

1. Instruções de Desvio

Aula 10 Microcontrolador Intel 8051 Parte 2

MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 UMA SOLUÇÃO POSSÍVEL. Obs.: Todas as questões têm valor 2,0. Boa prova e Feliz Natal e Ano Novo!!!!

CAPÍTULO 4 CONJUNTO DE INSTRUÇÕES

EXERCÍCIOS RESOLVIDOS

mov R1,10H ; Carrega o dado do endereço 10H em R1 mov R1,#10H ; Carrega 10H em R1

Laboratório de Microprocessadores e Microcontroladores

Prof. Adilson Gonzaga

Microprocessadores e Microcontroladores. Prova Substitutiva Uma Solução

Família 8051 (introdução) 2011/1

DIAGRAMA DE BLOCOS DE UM MICROCONTROLADOR

Microcontroladores. Conjunto de Instruções do Prof. Guilherme Peron Prof. Heitor Lopes Prof. Ronnier Rohrich Prof. Rubão

Memória de Dados Interna. Memória de Dados Interna

Laboratório de Microprocessadores e Microcontroladores

MICROPROCESSADORES E MICROCONTROLADORES Parte 2 Microcontrolador 8051

Tópicos: 1 - Modos de endereçamento do Pilha e instruções de Pilha. 3 - Instruções que usam pilha: - instrução CALL - instrução RET

Microcontroladores 8051

Laboratório de Microprocessadores e Microcontroladores

Engenharia Electrotécnica/ Engenharia Informática Microprocessadores e Aplicações

PRÁTICAS. Microcontroladores: (LT36D) Prof: DaLuz. Práticas - 2º sem Microcontroladores LT36D - 26/04/ :56 1/16

MICROPROCESSADORES E MICROCONTROLADORES Parte 2 Microcontrolador 8051

Instruções de movimentação de dados

Arquitetura de Um Processador I

Interrupção. Prof. Adilson Gonzaga

Conjunto de Instruções (ISA) II

Prof. Adilson Gonzaga

Instruções Assembly x Código de máquina Microprocessador Didático

Arquitetura de Computadores Conceitos Fundamentais. Graduação em Engenharia Elétrica - UFPR Prof. Carlos Marcelo Pedroso 2016

Temporização da CPU SEL-433 APLICAÇÕES DE MICROPROCESSADORES I. Ciclos de Máquina. Ciclos de Máquina. Temporização Interrupções Rotinas de Atraso

MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 UMA SOLUCAO POSSÍVEL

Temporização Interrupções. Prof: Evandro L. L. Rodrigues. Rotinas de Atraso

Prova de Arquitectura de Computadores (21010) Data: 18 de Junho de 2010

O microcontrolador Quatro partes importantes

Grupo I (5 valores) CD AB

Laboratório de Microprocessadores e Microcontroladores

Arquitectura de Computadores

Prova de Arquitectura de Computadores (21010) Data: 12 de Fevereiro de 2010

Aula 8 Microcontrolador 8051

Arquitectura de Computadores

UNIVERSIDADE PAULISTA (UNIP) Curso de Engenharia Mecatrônica Disciplina: Microprocessadores e Microcontroladores (MM) LISTA III

Neander - características

Aula 8 Microcontrolador 8051

Oprojeto apresenta três níveis de dificuldade: fácil, médio e difícil. No modo fácil tem-se uma

Arquitectura de Computadores

Laboratório de Microprocessadores e Microcontroladores

Laboratório de Microprocessadores e Microcontroladores

Introdução ao PIC. Guilherme Luiz Moritz 1. 6 de novembro de DAELT - Universidade Tecnológica Federal do Paraná

Laboratório de Microprocessadores e Microcontroladores

MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 - Uma Solução Possível

NOTAS DE AULA 06 MICROCONTROLADOR 8051

Prova de Arquitectura de Computadores (21010) Data: 5 de Fevereiro de 2009

MICROPROCESSADORES E MICROCONTROLADORES. Prova 1 Resposta Esperada

2.5 - Instruções Lógicas do ULA

UNIVERSIDADE FEDERAL DE ITAJUBÁ PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA THIAGO POUZA MUSSOLINI

p-fólio Arquitectura de Computadores U.C de julho de 2018 INSTRUÇÕES

Microprocessadores I ELE Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios

Microprocessadores. Organização de Memória

Laboratório de Microprocessadores e Microcontroladores

Assembly Saltos e Subrotinas

Organização de Memórias

CEFET-SP. Microcontroladores Família MCS-51 Conceitos, Aplicações e Projetos versão Wilson Ruiz. Wilson Ruiz

Microprocessadores I ELE Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS -

Arquitectura de Computadores

Aula 4 Conjunto de Instruções do Microprocessador 8085 Grupo Aritmético

MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 Resposta Esperada

MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 - RESPOSTA ESPERADA

Microcontroladores (µcs) e microprocessadores (µps) A família 80C51. 80C51: Arquitectura do núcleo de base. Os µcs da família 80C51

5 Programação modular em Linguagem Assembly

MICROPROCESSADORES E MICROCONTROLADORES PROVA 1

PROJETOS COM MICROCONTROLADORES

William Stallings Arquitetura e Organização de Computadores 8 a Edição

Conjunto de Instruções (ISA) I

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

Símbolos e abreviaturas utilizadas na descrição das instruções

Departamento de Sistemas de Computação - SSC. Sistemas Digitais. 2 o Semestre Projeto CPU. Data da apresentação: 26/27 de outubro

Laboratório de Sistemas Processadores e Periféricos Lista de comandos de Assembly

MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 (Tema: Microcontrolador 8051) Resposta Esperada

Transcrição:

CONJUNTO DE INSTRUÇÕES Rn - Registrador R0 R7 do banco de registradores selecionado. direto - 8-bits de endereço da posição da RAM de dados Podem ser referentes tanto à RAM interna (0 7F) como ao espaço SFR (80 - FF). @Ri - 8-bits da RAM interna de dados (00 - FF) endereçada indiretamente através de R0 ou R1 do banco de registradores selecionado. - valor de 8-bits contida na instrução. 16 - valoro de 16-bits contida na instrução. addr16 - Endereço de destino em 16-bits. Usado pelas instruções LCALL e LJMP, podendo acessar toda a memória. addr11 - Endereço de destino em 11-bits. Usado pelas instruções ACALL e AJMP, podendo acessar 2Kb de distância da instrução usada. rel - Endereço relativo em 8-bits. Pode alcançar uma distância de -128 a +127 bytes de distância da instrução seguinte à instrução usada. Note que o valor negativo deve ser obtido por complemento de dois. bit - Endereço direto do bit. Pode acessar a RAM interna e o espaço SFR. Mnemônico Descrição Bytes Períodos de clock Operações Aritméticas ADD A, Rn Soma o conteúdo do registrador Rn ao ADD A, direto Soma o conteúdo da RAM interna do endereço "direto" ao ADD A, @Ri Soma o conteúdo da RAM apontada por Ri ao ADD A, Soma o valor dado ao ADDC A, Rn Soma o conteúdo do registrador Rn ao ACC mais o carry. ADDC A, direto Soma o conteúdo da RAM interna do endereço "direto" ao ACC mais o carry. ADDC A, @Ri Soma o conteúdo da RAM interna apontada por Ri ao ACC mais o carry. ADDC A, Soma o valor dado ao ACC mais o carry. SUBB A, Rn Subtrai o conteúdo do registrador Rn do ACC menos o carry.

SUBB A, direto Subtrai do ACC o conteúdo da RAM interna do endereço "direto" menos o carry. SUBB A, @Ri Subtrai do ACC o conteúdo da RAM interna apontada por Ri menos o carry. SUBB A, Subtrai do ACC o valor dado menos o carry. INC A Incrementa o INC Rn Incrementa o registrador Rn de uma unidade. INC direto Incrementa de uma unidade o conteúdo do endereço "direto" da RAM INC @Ri Incrementa de uma unidade o conteúdo da posição de memória da RAM interna apontada pelo registrador Ri. DEC A Decrementa o ACC de uma unidade. DEC Rn Decrementa o registrador Rn de uma unidade. DEC direto Decrementa de uma unidade o conteúdo do endereço "direto" da RAM DEC @Ri Decrementa de uma unidade o conteúdo do endereço da RAM interna apontado por Ri. INC DPTR Incrementa de uma unidade o registrador de 16 Bits DPTR. MUL AB Multiplica A por B. 1 48 DIV AB Divide A por B. 1 48 DA A Ajuste decimal do Operações lógicas ANL A, Rn Lógica AND do registrador Rn com o ANL A, direto Lógica AND do conteúdo do endereço "direto" da RAM interna com o ANL A, @Ri Lógica AND do conteúdo do endereço da RAM interna apontado por Ri com o ANL A, Lógica AND do valor dado com o ANL A Lógica AND do ACC com o conteúdo do endereço "direto" da RAM

ANL Lógica AND do valor dado com o conteúdo do endereço "direto" da RAM ORL A, Rn Lógica OR do registrador Rn com o ORL A, direto Lógica OR do conteúdo do endereço "direto" da RAM interna com o ORL A, @Ri Lógica OR do conteúdo do endereço da RAM interna apontado por Ri com o ORL A, Lógica OR do valor dado com o ORL A Lógica OR do ACC com o conteúdo do endereço "direto"da RAM ORL Lógica OR do valor dado com o conteúdo do endereço "direto" da RAM XRL A, Rn Lógica OU Exclusivo do registrador Rn com o XRL A, direto Lógica OU Exclusivo do conteúdo do endereço "direto" da RAM interna com o XRL A, @Ri Lógica OU Exclusivo do conteúdo do endereço da RAM interna apontado por Ri com o XRL A, Lógica OR Exclusivo do valor dado com o XRL A Lógica OU Exclusivo do ACC com o conteúdo do endereço "direto" da RAM XRL Lógica OU Exclusivo do valor dado com o conteúdo do endereço "direto" da RAM CLR A Zera o CPL A Complementa o RL A Rotaciona o ACC para a esquerda. RLC A Rotaciona o ACC para a esquerda com o carry. RR A Rotaciona o ACC para direita. RRC A Rotaciona o ACC para direita com o carry. SWAP A Troca os "nibbles" do ACC entre si Transferência de dados

A, Rn Move o conteúdo do registrador para o A, direto Move conteúdo do endereço "direto" da RAM interna para o A, @Ri Move o conteúdo da posição de memória da RAM interna apontado por Ri para o A, Move o valor dado para o Rn, A Move o ACC para o registrador Rn. Rn, direto Move conteúdo do endereço "direto" da RAM interna para o registrador Rn. Rn, Move o valor dado para o registrador Rn. A Move ACC para o endereço "direto" da RAM Rn Move o registrador Rn para o conteúdo do endereço "direto". direto1, direto Move conteúdo do endereço "direto" da RAM interna para o conteúdo do endereço "direto1" @Ri Move o conteúdo da posição de memória da RAM interna apontado por Ri para o endereço "direto" da RAM Move o valor dado para o conteúdo do endereço "direto"da RAM @Ri, A Move ACC para a posição de memória da RAM interna apontado por Ri. @Ri, direto Move o conteúdo dado endereço "direto" da RAM interna para posição de memória da RAM interna apontada por Ri. @Ri, Move o valor dado para a posição de memória da RAM interna apontada por Ri. DPTR, 16 Carrega o DPTR com um dado de 16 bits. C A, @A+DPTR Move um byte da memória de Programa apontado por (A+DPTR) para o C A, @A+PC Move um byte da memória de Programa apontado por (A+PC) para o X A, @Ri Move o conteúdo da posição de memória da RAM externa apontada por Ri (endereço de 8-bits) para o X A, @DPTR Move o conteúdo da posição de memória da RAM externa apontado por DPTR (endereço de 16-bits) para o

X @Ri, A Move o ACC para a posição de memória da RAM externa apontado por Ri (endereço de 8-bits). X @DPTR, A Move o ACC para a posição de memória da RAM externa apontado DPTR (endereço de 16-bits). PUSH direto Salva conteúdo do endereço "direto" da RAM interna na pilha na posição de memória apontada por SP. POP direto Retira da pilha o conteúdo do endereço apontado por SP e coloca no endereço "direto". XCH A, Rn Troca conteúdo do registrador Rn com o XCH A, direto Troca o conteúdo do endereço "direto" com o XCH A, @Ri Troca o conteúdo da RAM interna apontado por Ri com o XCHD A, @Ri Troca o "nibble" menos significativo do ACC com o nibble menos significativo do conteúdo do endereço apontado por Ri Instruções boleanas CLR C Zera o carry. CLR bit Zera o bit especificado. SETB C Coloca o carry em nível lógico "1". SETB bit Coloca o bit especificado em nível lógico "1". CPL C Complementa o carry. CPL bit Complementa o bit especificado. ANL C, bit Lógica AND do bit especificado e o carry. ANL C, /bit Lógica AND do bit especificado complementado e o carry. ORL C, bit Lógica OR do bit especificado e o carry. ORL C, /bit Lógica OR do bit especificado complementado e o carry. C, bit Move bit especificado para o carry. bit, C Move carry para o bit especificado JC rel Salta para o endereço rel se o carry estiver em "1". JNC rel Salta para o endereço rel se o carry não estiver em "1".

JB bit,rel Salta para o endereço rel se o bit especificado estiver em "1". JNB bit,rel Salta para o endereço rel se o bit especificado não estiver em "1". JBC bit, rel Salta para o endereço rel se o bit especificado estiver em "1" e zera o bit. Instruções de desvio ACALL addr 11 Chamada de sub-rotina absoluta (até 2k). LCALL addr 16 Chamada de sub-rotina distante (até 64k). RET Retorno da sub-rotina. RETI Retorno da sub-rotina de uma interrupção. AJMP addr 11 Salto absoluto (até 2k). LJMP addr 16 Salto longo (até 64k). SJMP rel Salto curto (entre 128 e 127 bytes.). JMP @A+DPTR Salta para o endereço apontado por DPTR + ACC JZ rel Salta para o endereço rel se o resultado da operação no ACC for zero (Z=1). JNZ rel Salta para o endereço rel se o resultado da operação no ACC não for zero (Z=0). A, rel. Compara o ACC e o conteúdo do endereço direto e salta para o endereço rel se não for igual. A,, rel. Compara o ACC e o dado e salta para o endereço rel se não for igual. Rn,, rel. Compara o dado com o registrador Rn e salta para o endereço rel se não for igual. @Ri,, rel. Compara o dado com o conteúdo da posição de memória da RAM interna apontado por Ri e salta para rel se não for igual. DJNZ Rn, rel. Decrementa de uma unidade o registrador Rn e salta para rel se não for zero. DJNZ rel. Decrementa de uma unidade o conteúdo da posição de memória "direto da RAM interna e salta para rel se não for zero. NOP Nenhuma operação.