Questão de Programação — Linguagens de programação — FGV 2024
Programação›Linguagens de programação
Código
fg098214
Banca
FGV
Órgão
TJ-AP
Ano
2024
Nível
Superior
Cargo
Apoio Especializado - Tecnologia da Informação - Desenvolvimento de Sistemas
Maria, analista de TI, observou que o tipo mais primitivo de linguagem de programação é a linguagem que o computador entende diretamente, isto é, as instruções que podem ser diretamente executadas pelo hardware, ou seja, pela UCP (processador). Para criar um programa em linguagem de máquina, Maria deve conhecer todas as instruções disponíveis para aquela máquina e seus respectivos códigos de operação e formatos, assim como os registradores da UCP disponíveis e os endereços das células de memória onde serão armazenadas as instruções e os dados.Nesse contexto, Maria pretende converter para linguagem de máquina um programa escrito em linguagem de mais alto nível do que o da linguagem de montagem e que gera o código-objeto.Para tal Maria utilizará o método:
Aexecução;
Bmontagem;
Ccompilação;
Dinterpretação;
Elinkedição ou ligação.
Revelar gabarito e comentário▾
GabaritoC — compilação;
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Processo de conversão para linguagem de máquina
Gabarito: letra C (compilação). O enunciado descreve a conversão de um programa escrito em linguagem de mais alto nível que a de montagem para linguagem de máquina, gerando código-objeto. Esse processo é típico da compilação — o compilador traduz o código fonte de uma linguagem de alto nível (ex.: C, Java) para código de máquina (ou código objeto), que posteriormente será linkeditado para executável. Montagem (B) só se aplica a linguagem de montagem (assembly); interpretação (D) não gera código-objeto, executa diretamente; e linkedição (E) combina módulos já traduzidos.
1Alto nível (C, Java)
2Compilação → código-objeto
3Linkedição → executável
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Execução é o ato de rodar o programa, não de convertê-lo de uma linguagem para outra.
Alternativa B — ❌ Incorreta
Montagem é a tradução de linguagem de montagem (assembly) para código de máquina. O enunciado afirma que o programa está escrito em linguagem de mais alto nível do que a de montagem, portanto a montagem não se aplica.
Alternativa C — ✅ Correta ⟵ GABARITO
Compilação é o método que transforma um código fonte de linguagem de alto nível em código-objeto (linguagem de máquina ou próximo dela). O compilador realiza essa tradução, gerando arquivos que posteriormente passam pela linkedição para formar o executável.
Alternativa D — ❌ Incorreta
Interpretação executa o código fonte diretamente, linha a linha, sem gerar código-objeto. Não produz o arquivo objeto mencionado no enunciado.
Alternativa E — ❌ Incorreta
Linkeditação (ou ligação) combina módulos objeto já compilados em um único executável. Não faz a conversão inicial de linguagem de alto nível para código de máquina.
PEGA ESSA DICA!
Lembre-se da hierarquia: linguagem de alto nível → compilação → código objeto → linkedição → executável. Já a montagem é o passo de assembly → código de máquina. Interpretação pula a geração de código objeto. Na prova, a palavra "código-objeto" é um forte indício de compilação.