Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Universidade Federal de Santa Catarina – UFSC Campus Universitário de Araranguá Curso de Bacharelado em Tecnologias da Informação e Comunicação Disciplina de Organização e Arquitetura de Computadores Professor Dr. Rodeval Marcelino Acadêmico: Cristiano S. P. de Abreu Turma: 02652 Lista de Exercícios nº 5 – 8085 1. Interpretar e comentar o programa abaixo e apresentar o conteúdo do Acumulador ao final da execução do programa. .org 100h ; Inicia o programa no endereço de memória 100h. MVI A, 05h ; move de imediato o valor 05h para o acumulador. MVI C,02h ; move de imediato o valor 02h para o registrador C. ADD C ; soma o valor do acumulador com o valor do registrador C. ADI 10h ; sona de imediato o valor 10h. HLT ; fim do programa. 2. Elabore um programa para carregar os registradores A, B, C, D e E com valores conhecidos e que salve o conteúdo desses registradores a partir da posição de memória 2050H. .org 2050h MVI A, 05h MVI B, 03h MVI C, 02h MVI D, 04h MVI E, 06h HLT 3. Liste as instruções do microprocessador 8085 que executam as instruções de execução abaixo: a. Carrega o registrador B com D5h e o registrador C com D8h; b. Carregar os registradores B e C com os mesmos valores do item anterior utilizando uma única instrução; c. Carregar o par de registradores DE com 3800h. .org 1000 MVI B, D5h MVI C, D8h LXI B, D5D8h LXI D, 3800h HLT 4. Determine o conteúdo dos registradores B e C após a execução de cada um dos seguintes programas. a. LXI B, 24FFH ; conteúdo do B 24h, e C FFh. INX B ; incrementa em 1 o par de registradores, conteúdo do B 25h, e conteúdo do registrador C 00h. b. LXI B, 46FFH ; conteúdo do B 46h, e C ffh INR C ; incrementa em 1 o conteúdo do registrador C 00h, o flag de paridade acende. c. LXI B, 4F88H ; conteúdo do B 4Fh, e C 88h. DCR B ; decrementa em 1 conteúdo do registrador B, 4Eh. O flag de paridade acende (quantidade de zeros par). d. MVI B, C7H ; conteúdo do b C7h. MVI C, 00H ; conteúdo do C 00h, acende flag de paridade. 5. Determine o conteúdo do acumulador após completar as seguintes instruções de programa. a. MVI A,52H ; move de imediato o valor 52h para o acumulador. MVI B, 28H ; move de imediato o valor 28h para o registrador B. ADD B ; soma o conteúdo de B 28h ao acumulador 52h, o acumulador fica com 7Ah. b. MVI A, 74H ; move de imediato o valor 74h para o acumulador. MVI D, 6BH ; move de imediato o valor 6Bh para o registrador D. SUB D ; subtrai o conteúdo de D do acumulador, onde o conteúdo do acumulador fica 09h. c. LXI H, 20C0H ; o conteúdo do registrador H recebe 20h e o conteúdo do ; registrador L recebe C0h. MVI M, 20H ; move de imediato o valor 20h para o endereço 20C0h(HL). MVI A, 2AH ; move de imediato 2ah para o acumulador. ADD M ; soma ao acumulador conteúdo do endereço 20C0h (20h), onde o acumulador fica com conteúdo 4Ah. 6. Determine o conteúdo do acumulador após completar as seguintes instruções de programa. a. MVI A, 42H ; de imediato ao conteúdo do acumulador o valor 42h. MVI D, 15H ; move de imediato ao conteúdo do registrador o valor 15h. ORA D ; conteúdo do acumulador 57h. b. MVI A, 5CH ; de imediato ao conteúdo do acumulador o valor 5Ch. XRI FEH ; faz a lógica xor entre o valor FEh ao acumulador onde o conteúdo do acumulador fica A2h e o flag S acende. c. MVI A, F0H ; acumulador com valor F0h. XRA A ; acumulador zerou, ascendeu o flag z(acumulador zerou) e P (bits 1 par). 7. Interprete e comente o programa abaixo: .org 1000h inicio: ; Endereço de inicio do programa. IN 00h ; guarda o conteúdo na memória 00h. OUT 00h ; mostra no display o conteúdo da memória 00h. JMP inicio ; salta para o endereço especificado, no caso o endereço inicio criando um looping. 8. Interprete e comente o programa abaixo: .org 1000 ; mvi A, 00h ; move de imediato 00h para o acumulador. mvi C, 03h ; move de imediato o valor 03h para o registrador C. volta: ; ponto onde o programa deve retornar. adi 04h ; soma o valor 04h para o acumulador. dcr C ; decrementa em 1 o valor do registrador C. jnz volta ; se o valor do registrador c for zero ele sai senão ele retorna para o endereço volta. hlt ; fim do programa. 9. Interprete e comente o programa abaixo: .org 1000 ; MVI D, 8Bh ; move de imediato 8Bb para o registrador D. MVI C, 6Fh ; move de imediato 6Fh para o registrador C . MOV A, C ; copia o conteúdo co registrador C para o Acumulador. ADD D ; soma o conteúdo do registrador D ao conteúdo do acumulador, conteúdo do acumulador = FAh os flags S,P,A acendem. OUT 00H ; mostra no display o que contém no endereço 00h. 10. Interprete e comente o programa abaixo: .org 0030 ; inicia o programa no endereço de memória 0030h. mvi H, 00h ; move de imediato 00h para o registrador H. mvi L, 50h ; move de imediato 50h para o registrador L. mvi C, 20h ; move de imediato 20h para o registrador C. mov M,C ; copia o conteúdo do registrador C para o registrador M. mov C,M ; copia o conteúdo do registrador M para o registrador C. mov A, C ; copia o conteúdo do registrador C para o acumulador out 01H ; mostra no display o conteúdo do endereço 01h. mvi a,22 ; move de imediato 22 (16h) para o acumulador. out 00h ; mostra no display o conteúdo do endereço 00h. add c ; soma ao acumulador o conteúdo do registrador C, acumulador fica com conteúdo 2Ah. out 02H ; mostra no display o conteúdo do endereço 02h. hlt ; fim do programa.