Tradutores – compilador, interpretador e montador
ComputaçãoAlgoritmos e resolução de problemasIdades 15–16
Carregando…
Entre para usarO mesmo programa curto é traduzido por um compilador, que verifica o programa inteiro, lista todos os erros de sintaxe e gera um executável, e por um interpretador, que traduz e executa uma instrução por vez e para no primeiro erro. Uma versão de baixo nível passa por um montador (assembler) de duas passagens que transforma mnemônicos em código de máquina binário. Insira um erro de sintaxe, de execução ou de lógica e veja quando cada um é detectado, depois compare o tempo de várias execuções. Uma aba IDE mostra realce de sintaxe, diagnóstico de erros, preenchimento automático, pontos de parada e inspeção de variáveis.
Aula: Linguagens de programação e tradutores: linguagens de alto e baixo nível, compiladores, interpretadores, montadores e IDEs
O que mostra
Um processador só executa código de máquina, então programas escritos em outras linguagens precisam ser traduzidos. Um compilador traduz todo o código-fonte antes, por análise léxica, análise sintática, geração de código e otimização, e gera um executável rápido que dispensa o código-fonte. Um interpretador traduz e executa uma instrução por vez: começa na hora e para no primeiro erro, mas é mais lento e é necessário sempre. Um montador transforma cada mnemônico da linguagem de montagem em uma instrução de máquina. Erros de sintaxe quebram as regras da linguagem, erros de execução acontecem com o programa rodando e erros de lógica dão resultados errados sem aviso.
Como usar
Em Traduzir e executar, escolha um Tradutor, um Programa e um Erro inserido, ajuste o valor de entrada e clique em Compilar, Interpretar ou Montar para ver as etapas, a linha em tradução e o Diagnóstico de erros. Depois de compilar ou montar sem erros, clique em Executar programa várias vezes e compare no gráfico de tempo e na tabela de resultados. Na aba IDE, você clica nos números de linha para pôr pontos de parada, usa Executar / Continuar e Passo e digita na caixa de preenchimento automático.
Parâmetros que você pode mudar
- Aba inicial Traduzir e executar, IDE
- Tradutor Compilador, Interpretador, Montador
- Programa Relatório de combustível (sequência), Soma dos quadrados (laço)
- Erro inserido Sem erro, Um erro de sintaxe, Dois erros de sintaxe, Erro de lógica
- Valor digitado pelo usuário 0–20
Perguntas para explorar
- Com dois erros de sintaxe, por que o compilador lista os dois e o interpretador só o primeiro?
- Por que um combustível igual a 0 dá erro com todos os tradutores, mesmo sem erro de sintaxe?
- Depois de três execuções do programa com laço, por que a versão compilada é bem mais rápida que a interpretada?