Tá, nós já demos várias definições de compiladores e interpretadores e explicamos algumas diferenças entre eles aqui no blog. Mas vamos continuar a explicar, para que todo mundo entenda melhor.
Os Compiladores são tradutores que mapeiam programas escritos em linguagem de alto nível para programas equivalentes em linguagem de máquina. A execução de um programa escrito em linguagem de alto nível é, basicamente, um processo de dois passos: primeiro ocorre a conversão do programa fonte para o programa objeto equivalente, esse intervale de tem é chamado de tempo de compilação; Depois, o programa objeto é executado no intervalo de tempo chamado de tempo de execução.
Já os interpretadores, são processadores que aceitam como entrada o código intermediário de um programa anteriormente traduzido e produzem o "efeito de execução" do algoritmo original, sem porém mapeá-lo para a linguagem de máquina. Ou seja, a interpretação ocorre no tempo de execução, não sendo gerado um programa objeto.
Há alguns interpretadores que não utilizam um código intermediário, trabalhando diretamente sobre o programa fonte cada vez que esse deve ser executado. Mas esse enfoque consome muito tempo. Uma estratégia mais eficiente é a aplicação de técnicas de compilação para traduzir o programa fonte para uma forma intermediária que é, então, interpretada.
Adaptado do livro "Implementação de Linguagens de Programação: Compiladores", de Ana Maria de Alencar Price e Simão Sirineo Toscani.
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário