·

Engenharia Elétrica ·

Microprocessadores

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

Fazer Pergunta
Equipe Meu Guru

Prefere sua atividade resolvida por um tutor especialista?

  • Receba resolvida até o seu prazo
  • Converse com o tutor pelo chat
  • Garantia de 7 dias contra erros

Texto de pré-visualização

- Instruções Lógicas 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 - Unidade Lógica e Aritmética Arquitetura Interna do 8085 1 Registradores de uso Geral e Registrador de FLAG Registradores de Uso Geral e FLAG Registrador de Flag 2 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. 3 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. 4 Instruções Lógicas. ANA Reg Realiza a operação lógica AND (E) entre cada bit do conteúdo do registrador Reg com o bit correspondente do conteúdo do Acumulador (Registrador A). O Resultado da operação é armazenado no Acumulador. O registrador Reg pode ser qualquer registrador de uso geral (A, B, C, D, E, H e L). Todas as Flags são alteradas, sendo que a Flag CY = 0 e a Flag AC = 1. Tabela Verdade do operador AND. 5 Instruções Lógicas. ANA Reg Exemplo: ANA E Flags: S = 0, Z = 1, AC = 1, P = 1, CY = 0 6 Instruções Lógicas. ANI D8 Realiza a operação lógica AND (E) entre cada bit do conteúdo do Acumulador com o bit correspondente de D8. O Resultado da operação é armazenado no Acumulador. Todas as Flags são alteradas, sendo que a Flag CY = 0 e a Flag AC = 1. Exemplo: ANI 32H 7 Instruções Lógicas. ANA M Realiza a operação lógica AND (E) entre cada bit do conteúdo da memória endereçada pelo par H com o bit correspondente do conteúdo do Acumulador (Registrador A). O Resultado da operação é armazenado no Acumulador. Todas as Flags são alteradas, sendo que a Flag CY = 0 e a Flag AC = 1. Exemplo: ANA M 8 Instruções Lógicas. ANA M Exemplo: ANA M Flags: S = 0, Z = 0, AC = 1, P = 0, CY = 0 9 Instruções Lógicas. ORA Reg Realiza a operação lógica OR (OU) entre cada bit do conteúdo do registrador Reg com o bit correspondente do conteúdo do Acumulador (Registrador A). O Resultado da operação é armazenado no Acumulador. O registrador Reg pode ser qualquer registrador de uso geral (A, B, C, D, E, H e L). Todas as Flags são alteradas, sendo que a Flag CY = 0 e a Flag AC = 0. Tabela Verdade do operador OR. 10 Instruções Lógicas. ORA Reg Exemplo: ORA B Flags: S = 0, Z = 0, AC = 0, P = 1, CY = 0 11 Instruções Lógicas. ORI D8 Realiza a operação lógica OR (OU) entre cada bit do conteúdo do Acumulador com o bit correspondente de D8. O Resultado da operação é armazenado no Acumulador. Todas as Flags são alteradas, sendo que a Flag CY = 0 e a Flag AC = 0. Exemplo: ORI 23H 12 Instruções Lógicas. ORA M Realiza a operação lógica OR (OU) entre cada bit do conteúdo da memória endereçada pelo par H com o bit correspondente do conteúdo do Acumulador (Registrador A). O Resultado da operação é armazenado no Acumulador. Todas as Flags são alteradas, sendo que a Flag CY = 0 e a Flag AC = 0. Exemplo: ORA M 13 Instruções Lógicas. ORA M Exemplo: ORA M Flags: S = 0, Z = 0, AC = 0, P = 1, CY = 0 14 Instruções Lógicas. XRA Reg Realiza a operação lógica XOR (OU-Exclusivo) entre cada bit do conteúdo do registrador Reg com o bit correspondente do conteúdo do Acumulador (Registrador A). O Resultado da operação é armazenado no Acumulador. O registrador Reg pode ser qualquer registrador de uso geral (A, B, C, D, E, H e L). Todas as Flags são alteradas, sendo que a Flag CY = 0 e a Flag AC = 0. Tabela Verdade do operador XOR. 15 Instruções Lógicas. XRA Reg Exemplo: XRA A Flags: S = 0, Z = 1, AC = 0, P = 1, CY = 0 16 Instruções Lógicas. XRI D8 Realiza a operação lógica XOR (OU-Exclusivo) entre cada bit do conteúdo do Acumulador com o bit correspondente de D8. O Resultado da operação é armazenado no Acumulador. Todas as Flags são alteradas, sendo que a Flag CY = 0 e a Flag AC = 0. Exemplo: XRI 32H 17 Instruções Lógicas. XRA M Realiza a operação lógica XOR (OU-Exclusivo) entre cada bit do conteúdo da memória endereçada pelo par H com o bit correspondente do conteúdo do Acumulador (Registrador A). O Resultado da operação é armazenado no Acumulador. Todas as Flags são alteradas, sendo que a Flag CY = 0 e a Flag AC = 0. Exemplo: XRA M 18 Instruções Lógicas. XRA M Exemplo: XRA M Flags: S = 0, Z = 0, AC = 0, P = 0, CY = 0 19 Instruções Lógicas. CMP Reg O conteúdo do registrador Reg é comparado com o conteúdo do Acumulador (Registrador A). A comparação é realizada subtraindo-se o conteúdo do registrador Reg do conteúdo do Acumulador. O Resultado da operação é utilizado somente para modificar as FLAGs. O conteúdo do Acumulador e do Registrador Reg não são alterados. O registrador Reg pode ser qualquer registrador de uso geral (A, B, C, D, E, H e L). Todas as Flags são alteradas. Exemplo: CMP B => (A - B), que modifica as FLAGS. Registradores A e B antes e depois de CMP B 20 Instruções Lógicas. CMP Reg Exemplo: CMP B Flags: S = 0, Z = 0, AC = 1, P = 1, CY = 1 21 Instruções Lógicas. CMP B Esta instrução compara o conteúdo do Acumulador com o conteúdo do Registrador B. Flags: S = 0, Z = 0, AC = 1, P = 1, CY = 1 Se A = B Flags: Z = 1, CY = 0 Se A > B Flags: Z = 0, CY = 0 Se A < B Flags: Z = 0, CY = 1 22 Instruções Lógicas. CPI D8 O dado (D8) é comparado com o conteúdo do Acumulador. Todas as Flags são alteradas. Exemplo: CPI 05H Se A = D8 Flags: Z = 1, CY = 0 Se A > D8 Flags: Z = 0, CY = 0 Se A < D8 Flags: Z = 0, CY = 1 23 Instruções Lógicas. CMP M O conteúdo da memória endereçada pelo par H é comparado com o conteúdo do Acumulador (Registrador A). Todas as Flags são alteradas. Exemplo: CMP M 24 Instruções Lógicas. CMP M Exemplo: CMP M Flags: S = 1, Z = 0, AC = 0, P = 0, CY = 1 25 Instruções Lógicas. CMA Complementa o conteúdo do Acumulador. Equivale a operação NOT (Não) bit a bit. Nenhuma Flag é afetada. Exemplo: CMA 26 Instruções Lógicas. STC A Flag Carry é setada (CY = 1). Somente a Flag CY é afetada. Exemplo: STC 27 Instruções Lógicas. CMC Complementa a Flag Carry (CY) Somente a Flag CY é afetada. Exemplo: STC 28 Instruções Lógicas. RLC O conteúdo do Acumulador é rotacionado um bit para a esquerda. O bit mais significativo (b7) é copiado para a Flag Carry (CY) e também para o bit menos significativo (b0). Somente a Flag Carry (CY) é afetada. Exemplo: RLC 29 Instruções Lógicas. RRC O conteúdo do Acumulador é rotacionado um bit para a direita. O bit menos significativo (b0) é copiado para a Flag Carry (CY) e também para o bit mais significativo (b7). Somente a Flag Carry (CY) é afetada. Exemplo: RRC 30 Instruções Lógicas. RAR O conteúdo do Acumulador é rotacionado com o Carry um bit para a direita. O bit menos significativo (b0) é copiado para a Flag Carry (CY) e a Flag Carry é copiado para o bit mais significativo (b7). Somente a Flag Carry (CY) é afetada. Exemplo: RRC 31 Instruções Lógicas. RAL O conteúdo do Acumulador é rotacionado com o Carry um bit para a esquerda. O bit mais significativo (b7) é copiado para a Flag Carry (CY) e a Flag Carry é copiado para o bit menos significativo (b0). Somente a Flag Carry (CY) é afetada. Exemplo: RRC 32 Aulas dos dias 8 e 9 de novembro de 2021 Exercícios Resolução de exercícios com o emprego do simulador; 33