Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
UERJ FEN DEPTO. DE SISTEMAS E COMPUTAÇÃO 13/05/2010 Fundamentos de Computadores Digitais 1a Prova (P1) ALUNO: ................................................................................................................ 1a QUESTÃO (3,0 pontos) : Seja o trecho de programa, em Assembly Z-80, contido na coluna "Listagem" do Quadro abaixo. Complete a coluna "Montagem" com os endereços das instruções na Memória Principal e os códigos de máquina (objeto) das mesmas. Em seguida, complete a coluna "Execução", escrevendo os valores assumidos pelos registros e flags, após a execução de cada instrução. Utilize sempre a representação hexadecimal. O primeiro conjunto de valores da coluna "Execução" representa os conteúdos, em hexadecimal, dos registros e flags, imediatamente antes da busca e execução da instrução RRC B. LISTAGEM MONTAGEM EXECUÇÃO END. CÓD. PC SP A B C D E H L CY Z S ROT3: EQU 1A00H ORG 1900H 1900 1A08 90 70 1B 8C 60 1B 20 1 1 1 RRC B EX DE,HL JP NC, ROT3 2a QUESTÃO (3,0 pontos) : Seja o programa abaixo, escrito em Assembly Z-80, compreendendo o programa propriamente dito e, também, a definição de uma área de dados. Lembramos que “DEFS n” (DEFine Storage) é uma diretiva que reserva n posições na memória e que “DEFB ‘xyzw...’, b1, ..., bn ” (DEFine Byte) é uma diretiva que aloca na área de dados os caracteres ASCII correspondentes a x, y, z, w, ... e, ainda, os bytes b1, ..., bn. Responda, justificando sua resposta: a) Qual é o valor numérico do “label” COMECO? b) Que valor fica carregado no registrador B, após a execução da instrução LD B , (IX + 3) ? c) Em que endereço da Memória é guardado o conteúdo do acumulador (registrador A) quando a instrução LD (TAB + 2) , A é executada? ORG 1800H ; ÁREA DE PROGRAMA COMECO: --------- --------- --------- LD IX , UERJ LD B , (IX + 3) LD (TAB + 2) , A ORG 1B00H ; ÁREA DE DADOS BUF: DEFS 50H UERJ: DEFB ‘UERJ’ , 03 TAB: DEFB 3FH, 06H, 5BH, 4FH, 66H DEFB 6DH, 7DH, 07H, 7FH, 6FH 3a QUESTÃO (4,0 pontos) : Escrever, em Assembly Z-80, um programa que preencha, com o valor 55H, todas as posições de um Bloco da Memória Principal, que se inicia em 1970H e que termina em 1993H.