Diferença entre compilador e interpretador


Compilador

  • Produz um programa objeto como resultado da tradução completa.
  • Gera um arquivo executável que pode ser executado diretamente pelo S.O. , tornando a execução subsequente mais rápida.

Interpretador

  • Executa diretamente as operações específicas no programa fonte sobre as entradas fornecidas, sem gerar um arquivo executável separado.
  • Analisa e executa o código-fonte instrução por instrução durante o tempo de execução.

Resumo

CaracterísticaCompiladorInterpretador
ProcessoTraduz o programa inteiro de uma vez, antes da execução.Traduz e executa o programa instrução por instrução, em tempo de execução.
SaídaUm programa executável independente (.exe, binário).Nenhuma saída executável. O interpretador é sempre necessário.
DesempenhoA execução do código compilado é geralmente mais rápida.A execução é geralmente mais lenta devido à sobrecarga da tradução em tempo real.
Diagnóstico de ErrosErros de sintaxe e semântica são reportados após a análise completa do código.Erros mais detalhados e são reportados assim que a linha contendo o erro é encontrada durante a execução.
PortabilidadeO código objeto é específico para a plataforma (S.O. e arquitetura).O código-fonte é mais portável, desde que exista um interpretador para a plataforma.

Referências


Compiladores - Anotações 12-08-2025