Alternativa A - Asserções I e II são verdadeiras, e a II justifica a I.
Análise Detalhada
Esta questão aborda os dois principais métodos de execução de códigos-fonte em Ciência da Computação: compilação e interpretação. Para responder corretamente, é necessário entender como cada um funciona e suas implicações no desempenho.
Avaliação das Asserções
- Asserção I (Verdadeira): Afirma que programas compilados são geralmente mais rápidos. Isso ocorre porque todo o código é convertido em linguagem de máquina antes de ser rodado. Não há necessidade de "traduzir" nada durante a execução, o que otimiza o tempo de processamento.
- Asserção II (Verdadeira): Descreve corretamente o mecanismo de funcionamento.
- Compilação: Tradução completa do código-fonte para binário (ex: C, C++, Go) antes da execução.
- Interpretação: Leitura e execução linha por linha em tempo real (ex: Python, JavaScript, Ruby), muitas vezes exigindo um interpretador presente na memória durante a execução.
Relação de Causalidade
A Asserção II serve como a explicação lógica (o "porquê") da Asserção I.
| Característica | Compilador | Interpretador | Impacto no Desempenho |
|---|
| Tradução | Prévia (antes de rodar) | Durante a execução (tempo real) | Compilados tendem a ser mais rápidos |
| Execução | Executa o código de máquina gerado | Executa instruções do código-fonte/bytecode | Interpretação adiciona "overhead" (custo extra) |
O fato de a tradução ser feita previamente (Asserção II) é exatamente a razão pela qual o programa final roda de forma mais rápida (Asserção I), eliminando o tempo gasto na conversão durante a operação do software.
Portanto, a relação de causa e efeito está correta, tornando a Alternativa A a única opção válida.