Carregando...
Carregando...
Ajude a melhorar a plataforma
No processo de tradução de linguagens de alto nível para linguagem de máquina, utiliza-se uma série de passos intermediários que envolvem compiladores, montadores e ligadores. Compreender essas etapas é essencial para entender como o código escrito em linguagens como C ou Java é transformado em instruções executáveis pela CPU.
Identifique a sequência correta de tradução de um programa em linguagem C até sua execução pela CPU, considerando as etapas de compilação, montagem e ligação.
Explique melhor esta questão
Abre o Tutor com o enunciado e as alternativas já no campo — você revisa e envia.
Esta questão foi verificada por um de nossos administradores.
🎓 Gabarito Comentado (AVA):
A alternativa "Fonte em C -> Compilador -> Assembly -> Montador -> Objeto -> Ligador -> Executável" está correta, pois descreve o processo exato pelo qual o código-fonte em C é traduzido para código de máquina. O compilador transforma o código-fonte em assembly, que o montador converte em código objeto. O ligador então junta todos os módulos de objeto em um executável.
As demais alternativas estão incorretas:
A alternativa "Fonte em C -> Compilador -> Objeto -> Montador -> Assembly -> Ligador -> Executável" está incorreta, pois inverte a ordem dos passos de montagem e criação do objeto. O código assembly deve ser convertido para objeto antes de ser passado para o ligador.
A alternativa "Fonte em C -> Assembly -> Compilador -> Objeto -> Montador -> Ligador -> Executável" está incorreta, pois o código-fonte em C é primeiramente compilado para assembly, não vice-versa. O compilador não traduz diretamente assembly para objeto.
A alternativa "Fonte em C -> Montador -> Compilador -> Assembly -> Ligador -> Objeto -> Executável" está incorreta, pois o montador atua após o compilador, não antes. O compilador gera o código assembly que é então convertido pelo montador.
A alternativa "Fonte em C -> Ligador -> Compilador -> Assembly -> Montador -> Objeto -> Executável" está incorreta, pois o ligador é uma das últimas etapas no processo de tradução, após a geração dos objetos e antes da criação do executável.