Ed
há 7 meses
Vamos analisar cada uma das alternativas em relação ao programa em assembly para o 8085: 1. lda 9000: Carrega o valor da posição de memória 9000 para o registrador A. 2. mov b,a: Copia o valor do registrador A para o registrador B. 3. lda 9001: Carrega o valor da posição de memória 9001 para o registrador A. 4. add b: Soma o valor do registrador B ao valor do registrador A. 5. sta 9004: Armazena o resultado da soma na posição de memória 9004. Agora, vamos analisar as alternativas: A) A linha 2 indica que o dado de "b" será copiado para "a". Incorreta. A linha 2 copia o valor de A para B, não o contrário. B) Se na posição de memória 9000 tiver 04h e na posição 9001 tiver 0Fh, o valor armazenado em 9004 será 10h. Correta. O valor 04h (de 9000) é copiado para A, depois 0Fh (de 9001) é carregado em A, e a soma 04h + 0Fh resulta em 13h (ou 10h em decimal), que será armazenado em 9004. C) O programa contém um erro, falta um parâmetro na linha 4. Incorreta. A linha 4 está correta, pois a instrução `add b` não precisa de um parâmetro adicional. D) O resultado da operação de soma é colocado na posição de memória 9004. Incorreta. O resultado da soma é armazenado em 9004, mas a afirmação não é precisa, pois não menciona que o resultado é o que foi somado. E) O endereço 9000 receberá o resultado da operação. Incorreta. O resultado da operação não é armazenado em 9000, mas sim em 9004. Portanto, a alternativa correta é: B. Se na posição de memória 9000 tiver 04h e na posição 9001 tiver 0Fh, o valor armazenado em 9004 será 10h.
Já tem uma conta?
Ao continuar, você aceita os Termos de Uso e Política de Privacidade
Mais perguntas desse material