SamuelUFU (discussão | contribs)
SamuelUFU (discussão | contribs)
Linha 12: Linha 12:
== Exemplos de interpretadores ==
== Exemplos de interpretadores ==
== Referências Bibliográficas ==
== Referências Bibliográficas ==
http://producao.virtual.ufpb.br/books/camyle/introducao-a-computacao-livro/livro/livro.chunked/ch05s04.html ''(25/05/2017 - 16:20)''

Edição das 19h21min de 25 de maio de 2017

Conceito

  • O software interpretador é um programa de computador que executa instruções escritas em uma linguagem de programação. Por exemplo, as linguagens Basic, Prolog, Python e Java, são frequentemente interpretadas. Um interpretador geralmente usa uma das seguintes estratégias para a execução do programa:
    • Executar o código fonte diretamente ou
    • Traduzir o código fonte em alguma representação intermediária e depois executar este código.
  • Para isso, certos tipos de tradutores transformam uma linguagem fonte em uma linguagem simplificada, chamada de código intermediário, que pode ser diretamente “executado” por um programa chamado interpretador. Podemos imaginar o código intermediário como uma linguagem de máquina de um "computador abstrato" projetado para executar o código fonte.
  • Interpretadores são, em geral, menores que compiladores e facilitam a implementação de construções complexas em linguagens de programação. Entretanto, o tempo de execução de um programa interpretado é geralmente maior que o tempo de execução deste mesmo programa compilado, pois o interpretador deve analisar cada declaração no programa a cada vez que é executado e depois executar a ação desejada, enquanto que o código compilado apenas executa a ação dentro de um contexto fixo, anteriormente determinado pela compilação. Este tempo no processo de análise é conhecido como overhead interpretativa.

Princípio de funcionamento

Análise Léxica

Análise Sintática

Bytecode

Exemplos de interpretadores

Referências Bibliográficas

http://producao.virtual.ufpb.br/books/camyle/introducao-a-computacao-livro/livro/livro.chunked/ch05s04.html (25/05/2017 - 16:20)