Dados os valores de memória abaixo e uma máquina de arquitetura de 1-endereço com Acumulador, que valores as instruções abaixo carregam no Acumulador?
palavra 20 contém 40
palavra 30 contém 50
palavra 40 contém 60
palavra 50 contém 70
d. LOAD IMMEDIATE 30

Passo 1

O enunciado dá valores de memória e pergunta o que a instrução abaixo carrega no Acumulador:
  • palavra 20 contém 40
  • palavra 30 contém 50
  • palavra 40 contém 60
  • palavra 50 contém 70
A instrução a analisar é: LOAD IMMEDIATE 30.

Passo 2

Entender o que significa “LOAD IMMEDIATE”. Vou explicar de forma bem clara e sem pressa:
  • “LOAD” em geral significa colocar algo no Acumulador.
  • “IMMEDIATE” significa que o operando que aparece na instrução é o próprio valor a ser carregado, e não um endereço de memória.
    Ou seja, em "LOAD IMMEDIATE ..." o número entre parênteses é o valor direto que vai para o Acumulador.

Passo 3

Contrastando com o modo direto (não-immediate) para fixar:
  • Se a instrução fosse apenas "LOAD 30" (modo direto), o processador buscaria na memória o conteúdo do endereço 30 e carregaria esse conteúdo no Acumulador. Pelo enunciado, a palavra 30 contém 50, então "LOAD 30" colocaria \,50 no Acumulador.
  • Mas como a instrução é "LOAD IMMEDIATE 30", não se olha para a memória em 30; carrega-se o valor literal \,30.

Passo 4

Aplicando ao caso dado: a instrução "LOAD IMMEDIATE 30" coloca exatamente o número imediato \,30 no Acumulador, independente dos conteúdos listados nas palavras 20,30,40,50.
Resumo prático para a prova (truque de bolso): se vir a palavra IMMEDIATE ao lado do LOAD, leia o operando como “o valor” — não como endereço. Então memorize: "LOAD IMMEDIATE X → Acumulador recebe X".

Resposta

Acumulador = 30

Exercícios relacionados