• Home
  • Chat IA
  • Guru IA
  • Tutores
  • Central de ajuda
Home
Chat IA
Guru IA
Tutores

·

Engenharia Elétrica ·

Microprocessadores

Envie sua pergunta para a IA e receba a resposta na hora

Recomendado para você

Slide - Instruções de Chamada de Subrotinas do 8085 - Microprocessadores 2021-2

39

Slide - Instruções de Chamada de Subrotinas do 8085 - Microprocessadores 2021-2

Microprocessadores

UNESP

Slide - Instruções Lógicas do 8085 - Microprocessadores 2021-2

34

Slide - Instruções Lógicas do 8085 - Microprocessadores 2021-2

Microprocessadores

UNESP

Exercício - Microprocessadores 2021 2

16

Exercício - Microprocessadores 2021 2

Microprocessadores

UNESP

Slide - Modos de Endereçamentos e Instruções de Transferência de Dados do 8085 - Microprocessadores 2021-2

32

Slide - Modos de Endereçamentos e Instruções de Transferência de Dados do 8085 - Microprocessadores 2021-2

Microprocessadores

UNESP

Slide - Instruções Aritméticas do 8085 - Microprocessadores 2021-2

35

Slide - Instruções Aritméticas do 8085 - Microprocessadores 2021-2

Microprocessadores

UNESP

Atividade Pratica Microprocessadores Microcontroladores UNINTER 2023

27

Atividade Pratica Microprocessadores Microcontroladores UNINTER 2023

Microprocessadores

UNINTER

Resumo sobre a Linguagem C para Microcontroladores

19

Resumo sobre a Linguagem C para Microcontroladores

Microprocessadores

USU

Microprocessadores assembly

3

Microprocessadores assembly

Microprocessadores

UFC

Resumo Microprocessadores e Microcontroladores - Introducao e Sistemas Embarcados

4

Resumo Microprocessadores e Microcontroladores - Introducao e Sistemas Embarcados

Microprocessadores

USU

Atividade de Exercícios

7

Atividade de Exercícios

Microprocessadores

UNINTER

Texto de pré-visualização

- Instruções de Desvios do 8085 - Microprocessadores I Professor: Alexandre César Rodrigues da Silva Universidade Estadual Paulista “Júlio de Mesquita Filho” Faculdade de Engenharia – Câmpus de Ilha Solteira Departamento de Engenharia Elétrica - 2º Semestre de 2021 - CPU - FLAGs - PC Arquitetura Interna do 8085 1 Fluxo do Programa Fluxo do Programa 2 Fluxo do Programa e Registrador de FLAGs Fluxo do Programa Registrador de FLAGs 3 Conjunto de Instruções do 8085 - ( Instruction Set ) ISA - Instruction Set Architecture As instruções do 8085 são classificadas em 5 grupos de instruções: Instruções de Transferência de dados; Instruções Aritméticas; Instruções Lógicas; Instruções de Desvios; Instruções de Controle. 4 Conjunto de Instruções do 8085 - ( Instruction Set ) As instruções do 8085 são classificadas em 5 grupos de instruções: Instruções de Transferência de dados; Instruções Aritméticas; Instruções Lógicas; Instruções de Desvios; Instruções de Controle. 5 Instruções de Desvios. JMP addr16 Trata-se de um desvio incondicional; Quando esta instrução é executada o endereço (addr16) é movido para o Contador de Programa (PC). O Processador inicia a execução da instrução armazenada no endereço addr16; Desvio Incondicional 6 Instruções de Desvios. J <condição> addr16 IF <condição> é Verdade Então addr16; Trata-se de um desvio condicional; As instruções de desvios condicionais verificam as condições das FLAGs. Se a condição da FLAG é verdadeira então o endereço addr16 é movido para o Contador de Programa (PC). O Processador inicia a execução da instrução armazenada no endereço addr16; Se a condição da FLAG for falsa a próxima instrução é executada. Desvios Condicionais 7 Instruções de Desvios. J <condição> addr16 JZ addr16 => Desvia se a Flag Z =1; JNZ addr16 => Desvia se a Flag Z =0; JC addr16 => Desvia se a Flag CY =1; JNC addr16 => Desvia se a Flag CY =0; JM addr16 => Desvia se a Flag S =1; JP addr16 => Desvia se a Flag S =0; JPE addr16 => Desvia se a Flag P =1; JPO addr16 => Desvia se a Flag P =0; Desvios Condicionais 8 Fluxograma. Fluxograma é a representação gráfica do fluxo das operações de um programa. Trata-se da representação gráfica de um algorítmo que facilita a visualização dos passos de um programas. Símbolos geralmente utilizados. 9 Fluxograma - Significado dos Símbolos. Símbolos geralmente utilizados. 10 Fluxograma. Exemplo de um fluxograma. 11 Fluxograma - Estrutura For. Exemplo de um fluxograma. 12 Fluxograma - Estrutura For. Exemplo de um fluxograma. 13 Exemplo 1: Escrever um programa em assemby para adicionar dois números de 8 bits armazenados nas localizações de memória 2040H e 2041H. O Resultado deve ser armazenado nos endereços 2042H e 2043H. 14 Exemplo 1: Escrever um programa em assemby para adicionar dois números de 8 bits armazenados nas localizações de memória 2040H e 2041H. O Resultado deve ser armazenado nos endereços 2042H e 2043H. Para executar a adição um dos operandos deve estar no Acumulador e o outro pode estar em qualquer registrador de uso geral ou em memória); A adição de dois números de 8 bits pode resultar em 8 bits ou em 9 bits; Após a adição o resultado fica armazenado no Acumulador; O Acumulador pode armazenar somente 8 bits. Se existir o vai um o processador irá setar o Carry (CY=1); 15 Exemplo 1: Algoritmo 1: 1. Ler um operando da memória para o Acumulador. Mover o operando para o registrador B; 2. Ler o outro operando da memória para o Acumulador; 3. Carregar o registrador C com o valor 0; 4. Adicionar o Acumulador com o registrador B; 5. Avalie a Flag Carry (CY). Se a Flag Cy = 1 execute o passo 6. Se Flag Cy = 0 desvie para o passo 7; 6. Incremente o registrador C; 7. Armazenar o conteúdo do Acumulador na memória; 8. Mover o Carry (CY) para o Acumulador e armazenar na memória consecutiva; 9. Fim. 16 Exemplo 1: Fluxograma para o Algoritmo 1: 17 Exemplo 1: Assemby para o Algoritmo 1: 18 Exemplo 1: Assemby para o Algoritmo 1: Simulador Abacus. 19 Exemplo 1: Algoritmo 2: 1. Carregar o endereço da memória contendo o dado no par H (HL) => ponteiro de dados; 2. Zerar o registrador C; 3. Mover o primeiro dado da memória para o Acumulador; 4. Incrementar o ponteiro de dados (Par H); 5. Adicionar o conteúdo da memória endereçada pelo par H com o Acumulador; 6. Verifique o Carry (CY). Se CY=1, vai para o passo 7. Se CY=0, vai para o passo 8 ; 7. Incremente o conteúdo do registrador C; 8. Incremente o ponteiro de dados e armazena a soma; 9. Incremente o ponteiro de dados e armazena o Carry (CY); 10. Fim. 20 Exemplo 1: Assemby para o Algoritmo 2: 21 Exemplo 2: Exercício do laboratório sem o emprego de loop: 22 Exemplo 2: Programa assemby para o Algoritmo 1: 23 Exemplo 2: Programa em assembly para o Algoritmo 2: 24 Exemplo 3: Escrever um programa em assemby para multiplicar dois números de 8 bits armazenados nas posições de memória de endereços 2040H e 2041H. O Resultado deve ser armazenado nos endereços 2042H e 2043H. 25 Exemplo 3: Escrever um programa em assemby para multiplicar dois números de 8 bits armazenados nas posições de memória de endereços 2040H e 2041H. O Resultado deve ser armazenado nos endereços 2042H e 2043H. A multiplicação é executada através de sucessivas adições. O valor inicial do somador assume o valor zero; Um dos números é utilizado como contador, para controlar a quantidade de adições a serem realizadas no somador; O outro número é adicionado no somador a quantidade de vezes definida pelo contador; O resultado do produto de dois número de 8 bits pode ser de 16 bits. Então precisa-se de um outro registrador para contar quantas vezes ocorrem Carry (CY=1); 26 Exemplo 3: Assemby para o Algoritmo: 27 Exemplo 3: Assemby para o Algoritmo: 28 Exemplo 3: Assemby para o Algoritmo: 29 Exemplo 4: Escrever um programa em assemby para somar os dados de um vetor armazenado em memória no endereço 2040H até 2040H + N. O primeiro elemento do vetor (endereço 2040H) não deve ser somado, pois informa a quantidade de elementos do vetor, ou seja, informa o valor de N. Assumir que a soma não excede 2 bytes. O valor de N (memória 2040H) é utilizado para informar a quantidade de elementos do vetor que serão adicionados; O valor inicial da soma é assumido zero; O par H (HL) é usado como ponteiro de dados; Cada elemento do vetor é adicionado ao somador. Como a soma pode gerar resultado em 2 bytes, utiliza-se um registrador para armazenar o Carry (CY); 30 Exemplo 4: Algoritmo:. 1. Carregar o endereço de memória do 1º elemento do vetor no ponteiro H (HL); 2. Copiar o conteúdo da memória endereçada pelo ponteiro H para o registrador B (Contador de elementos); 3. Zerar o Acumulador (Somador) e o Registrador C (Somador de CY); 4. Incrementar o ponteiro H; 5. Adicionar o conteúdo da memória endereçada pelo ponteiro H ao Acumulador; 6. Verificar a Flag Carry (CY). Se CY=0, vai para o passo 8. Se CY=1, vai para o passo 7; 31 Exemplo 4: Algoritmo:. 7. Incrementar o conteúdo do registrador C; 8. Decrementar o contador (Registrador B); 9. Verificar a Flag Zero (Z). Se Z=0, volte ao passo 4. Se Z=1, vai para o passo 10; 10. Armazenar o Acumulador (Byte Menos Significativo) na memória; 11. Copiar o conteúdo do registrador C (CY) para o Acumulador (Byte Mais Significativo) e armazenar na memória; 12. Fim; 32 Exemplo 4: Fluxograma: Início Carregar o endereço do ponteiro de dados em HL Usando o ponteiro H, copiar o conteúdo de elementos do vetor para o registrador B Zerar registradores A e C Incremente o ponteiro de dados (HL) Adicione o dado contido na memória apontada pelo ponteiro H ao Acumulador Verifique se CY = 0 Sim Não 1 Decremente contador (Reg. B) Verifique se Z = 0 Sim Não Armazenar Byte LS na memória (Acumulador). Mover Reg C para o Acumulador e armazenar Byte MS na memória. Fim Exemplo 4: Programa em Assembly: LXI H,2040H MOV B,M XRA A MOV C,A Soma: INX H ADD M JNC Pula INR C Pula: DCR B JNZ Soma STA 2030H MOV A,C STA 2031H HLT Exercício 1 - Busca do menor valor em um vetor: Escrever um programa em assembly para localizar o menor valor dos elementos de um vetor de dados. O 1º elemento do vetor está armazenado na memória de endereço 2040H e o último elemento do vetor, que não deve ser considerado na busca, é identificado pelo byte FFH. 35 Exercício 2 - Ordenar os valores em um vetor: Escrever um programa em assembly para ordenar os elementos de um vetor em ordem crescente. O vetor está armazenado em memória iniciando no endereço 2040H. O 1ª elemento do vetor (Memória de endereço 2040H) informa a quantidade de elementos contidos no vetor. 36

Envie sua pergunta para a IA e receba a resposta na hora

Recomendado para você

Slide - Instruções de Chamada de Subrotinas do 8085 - Microprocessadores 2021-2

39

Slide - Instruções de Chamada de Subrotinas do 8085 - Microprocessadores 2021-2

Microprocessadores

UNESP

Slide - Instruções Lógicas do 8085 - Microprocessadores 2021-2

34

Slide - Instruções Lógicas do 8085 - Microprocessadores 2021-2

Microprocessadores

UNESP

Exercício - Microprocessadores 2021 2

16

Exercício - Microprocessadores 2021 2

Microprocessadores

UNESP

Slide - Modos de Endereçamentos e Instruções de Transferência de Dados do 8085 - Microprocessadores 2021-2

32

Slide - Modos de Endereçamentos e Instruções de Transferência de Dados do 8085 - Microprocessadores 2021-2

Microprocessadores

UNESP

Slide - Instruções Aritméticas do 8085 - Microprocessadores 2021-2

35

Slide - Instruções Aritméticas do 8085 - Microprocessadores 2021-2

Microprocessadores

UNESP

Atividade Pratica Microprocessadores Microcontroladores UNINTER 2023

27

Atividade Pratica Microprocessadores Microcontroladores UNINTER 2023

Microprocessadores

UNINTER

Resumo sobre a Linguagem C para Microcontroladores

19

Resumo sobre a Linguagem C para Microcontroladores

Microprocessadores

USU

Microprocessadores assembly

3

Microprocessadores assembly

Microprocessadores

UFC

Resumo Microprocessadores e Microcontroladores - Introducao e Sistemas Embarcados

4

Resumo Microprocessadores e Microcontroladores - Introducao e Sistemas Embarcados

Microprocessadores

USU

Atividade de Exercícios

7

Atividade de Exercícios

Microprocessadores

UNINTER

Texto de pré-visualização

- Instruções de Desvios do 8085 - Microprocessadores I Professor: Alexandre César Rodrigues da Silva Universidade Estadual Paulista “Júlio de Mesquita Filho” Faculdade de Engenharia – Câmpus de Ilha Solteira Departamento de Engenharia Elétrica - 2º Semestre de 2021 - CPU - FLAGs - PC Arquitetura Interna do 8085 1 Fluxo do Programa Fluxo do Programa 2 Fluxo do Programa e Registrador de FLAGs Fluxo do Programa Registrador de FLAGs 3 Conjunto de Instruções do 8085 - ( Instruction Set ) ISA - Instruction Set Architecture As instruções do 8085 são classificadas em 5 grupos de instruções: Instruções de Transferência de dados; Instruções Aritméticas; Instruções Lógicas; Instruções de Desvios; Instruções de Controle. 4 Conjunto de Instruções do 8085 - ( Instruction Set ) As instruções do 8085 são classificadas em 5 grupos de instruções: Instruções de Transferência de dados; Instruções Aritméticas; Instruções Lógicas; Instruções de Desvios; Instruções de Controle. 5 Instruções de Desvios. JMP addr16 Trata-se de um desvio incondicional; Quando esta instrução é executada o endereço (addr16) é movido para o Contador de Programa (PC). O Processador inicia a execução da instrução armazenada no endereço addr16; Desvio Incondicional 6 Instruções de Desvios. J <condição> addr16 IF <condição> é Verdade Então addr16; Trata-se de um desvio condicional; As instruções de desvios condicionais verificam as condições das FLAGs. Se a condição da FLAG é verdadeira então o endereço addr16 é movido para o Contador de Programa (PC). O Processador inicia a execução da instrução armazenada no endereço addr16; Se a condição da FLAG for falsa a próxima instrução é executada. Desvios Condicionais 7 Instruções de Desvios. J <condição> addr16 JZ addr16 => Desvia se a Flag Z =1; JNZ addr16 => Desvia se a Flag Z =0; JC addr16 => Desvia se a Flag CY =1; JNC addr16 => Desvia se a Flag CY =0; JM addr16 => Desvia se a Flag S =1; JP addr16 => Desvia se a Flag S =0; JPE addr16 => Desvia se a Flag P =1; JPO addr16 => Desvia se a Flag P =0; Desvios Condicionais 8 Fluxograma. Fluxograma é a representação gráfica do fluxo das operações de um programa. Trata-se da representação gráfica de um algorítmo que facilita a visualização dos passos de um programas. Símbolos geralmente utilizados. 9 Fluxograma - Significado dos Símbolos. Símbolos geralmente utilizados. 10 Fluxograma. Exemplo de um fluxograma. 11 Fluxograma - Estrutura For. Exemplo de um fluxograma. 12 Fluxograma - Estrutura For. Exemplo de um fluxograma. 13 Exemplo 1: Escrever um programa em assemby para adicionar dois números de 8 bits armazenados nas localizações de memória 2040H e 2041H. O Resultado deve ser armazenado nos endereços 2042H e 2043H. 14 Exemplo 1: Escrever um programa em assemby para adicionar dois números de 8 bits armazenados nas localizações de memória 2040H e 2041H. O Resultado deve ser armazenado nos endereços 2042H e 2043H. Para executar a adição um dos operandos deve estar no Acumulador e o outro pode estar em qualquer registrador de uso geral ou em memória); A adição de dois números de 8 bits pode resultar em 8 bits ou em 9 bits; Após a adição o resultado fica armazenado no Acumulador; O Acumulador pode armazenar somente 8 bits. Se existir o vai um o processador irá setar o Carry (CY=1); 15 Exemplo 1: Algoritmo 1: 1. Ler um operando da memória para o Acumulador. Mover o operando para o registrador B; 2. Ler o outro operando da memória para o Acumulador; 3. Carregar o registrador C com o valor 0; 4. Adicionar o Acumulador com o registrador B; 5. Avalie a Flag Carry (CY). Se a Flag Cy = 1 execute o passo 6. Se Flag Cy = 0 desvie para o passo 7; 6. Incremente o registrador C; 7. Armazenar o conteúdo do Acumulador na memória; 8. Mover o Carry (CY) para o Acumulador e armazenar na memória consecutiva; 9. Fim. 16 Exemplo 1: Fluxograma para o Algoritmo 1: 17 Exemplo 1: Assemby para o Algoritmo 1: 18 Exemplo 1: Assemby para o Algoritmo 1: Simulador Abacus. 19 Exemplo 1: Algoritmo 2: 1. Carregar o endereço da memória contendo o dado no par H (HL) => ponteiro de dados; 2. Zerar o registrador C; 3. Mover o primeiro dado da memória para o Acumulador; 4. Incrementar o ponteiro de dados (Par H); 5. Adicionar o conteúdo da memória endereçada pelo par H com o Acumulador; 6. Verifique o Carry (CY). Se CY=1, vai para o passo 7. Se CY=0, vai para o passo 8 ; 7. Incremente o conteúdo do registrador C; 8. Incremente o ponteiro de dados e armazena a soma; 9. Incremente o ponteiro de dados e armazena o Carry (CY); 10. Fim. 20 Exemplo 1: Assemby para o Algoritmo 2: 21 Exemplo 2: Exercício do laboratório sem o emprego de loop: 22 Exemplo 2: Programa assemby para o Algoritmo 1: 23 Exemplo 2: Programa em assembly para o Algoritmo 2: 24 Exemplo 3: Escrever um programa em assemby para multiplicar dois números de 8 bits armazenados nas posições de memória de endereços 2040H e 2041H. O Resultado deve ser armazenado nos endereços 2042H e 2043H. 25 Exemplo 3: Escrever um programa em assemby para multiplicar dois números de 8 bits armazenados nas posições de memória de endereços 2040H e 2041H. O Resultado deve ser armazenado nos endereços 2042H e 2043H. A multiplicação é executada através de sucessivas adições. O valor inicial do somador assume o valor zero; Um dos números é utilizado como contador, para controlar a quantidade de adições a serem realizadas no somador; O outro número é adicionado no somador a quantidade de vezes definida pelo contador; O resultado do produto de dois número de 8 bits pode ser de 16 bits. Então precisa-se de um outro registrador para contar quantas vezes ocorrem Carry (CY=1); 26 Exemplo 3: Assemby para o Algoritmo: 27 Exemplo 3: Assemby para o Algoritmo: 28 Exemplo 3: Assemby para o Algoritmo: 29 Exemplo 4: Escrever um programa em assemby para somar os dados de um vetor armazenado em memória no endereço 2040H até 2040H + N. O primeiro elemento do vetor (endereço 2040H) não deve ser somado, pois informa a quantidade de elementos do vetor, ou seja, informa o valor de N. Assumir que a soma não excede 2 bytes. O valor de N (memória 2040H) é utilizado para informar a quantidade de elementos do vetor que serão adicionados; O valor inicial da soma é assumido zero; O par H (HL) é usado como ponteiro de dados; Cada elemento do vetor é adicionado ao somador. Como a soma pode gerar resultado em 2 bytes, utiliza-se um registrador para armazenar o Carry (CY); 30 Exemplo 4: Algoritmo:. 1. Carregar o endereço de memória do 1º elemento do vetor no ponteiro H (HL); 2. Copiar o conteúdo da memória endereçada pelo ponteiro H para o registrador B (Contador de elementos); 3. Zerar o Acumulador (Somador) e o Registrador C (Somador de CY); 4. Incrementar o ponteiro H; 5. Adicionar o conteúdo da memória endereçada pelo ponteiro H ao Acumulador; 6. Verificar a Flag Carry (CY). Se CY=0, vai para o passo 8. Se CY=1, vai para o passo 7; 31 Exemplo 4: Algoritmo:. 7. Incrementar o conteúdo do registrador C; 8. Decrementar o contador (Registrador B); 9. Verificar a Flag Zero (Z). Se Z=0, volte ao passo 4. Se Z=1, vai para o passo 10; 10. Armazenar o Acumulador (Byte Menos Significativo) na memória; 11. Copiar o conteúdo do registrador C (CY) para o Acumulador (Byte Mais Significativo) e armazenar na memória; 12. Fim; 32 Exemplo 4: Fluxograma: Início Carregar o endereço do ponteiro de dados em HL Usando o ponteiro H, copiar o conteúdo de elementos do vetor para o registrador B Zerar registradores A e C Incremente o ponteiro de dados (HL) Adicione o dado contido na memória apontada pelo ponteiro H ao Acumulador Verifique se CY = 0 Sim Não 1 Decremente contador (Reg. B) Verifique se Z = 0 Sim Não Armazenar Byte LS na memória (Acumulador). Mover Reg C para o Acumulador e armazenar Byte MS na memória. Fim Exemplo 4: Programa em Assembly: LXI H,2040H MOV B,M XRA A MOV C,A Soma: INX H ADD M JNC Pula INR C Pula: DCR B JNZ Soma STA 2030H MOV A,C STA 2031H HLT Exercício 1 - Busca do menor valor em um vetor: Escrever um programa em assembly para localizar o menor valor dos elementos de um vetor de dados. O 1º elemento do vetor está armazenado na memória de endereço 2040H e o último elemento do vetor, que não deve ser considerado na busca, é identificado pelo byte FFH. 35 Exercício 2 - Ordenar os valores em um vetor: Escrever um programa em assembly para ordenar os elementos de um vetor em ordem crescente. O vetor está armazenado em memória iniciando no endereço 2040H. O 1ª elemento do vetor (Memória de endereço 2040H) informa a quantidade de elementos contidos no vetor. 36

Sua Nova Sala de Aula

Sua Nova Sala de Aula

Empresa

Central de ajuda Contato Blog

Legal

Termos de uso Política de privacidade Política de cookies Código de honra

Baixe o app

4,8
(35.000 avaliações)
© 2025 Meu Guru®