Commit e68ca452 authored by Eduardo de Santana Medeiros Alexandre's avatar Eduardo de Santana Medeiros Alexandre
Browse files

tradutores

parent f92a15f6
......@@ -351,34 +351,35 @@ No computador, o problema de Carlinhos se repete diariamente, havendo a
necessidade de softwares básicos para traduzir e interpretar os diversos
programas dos usuários escritos em diversas linguagens existentes. Os
softwares que convertem um programa de usuário escrito em uma linguagem para
outra linguagem são chamados de tradutores. A linguagem na qual o programa
outra linguagem são chamados de *((tradutores))*. A linguagem na qual o programa
original está expresso é chamada de linguagem fonte e a linguagem para a qual
ela será convertida é conhecida como linguagem alvo. Tanto a linguagem fonte
quanto a linguagem alvo definem níveis de abstração específicos.
Se existir um processador que possa executar diretamente programas escritos na
linguagem fonte, não há necessidade de se traduzir o programa fonte para uma
linguagem alvo.
// TODO Imagem?
O método de tradução é empregado quando há um processador (seja ele
implementado em hardware ou por interpretação) disponível para executar
programas expressos na linguagem alvo mas não na linguagem fonte. Se a
tradução tiver sido feita corretamente, a execução do programa traduzido
programas expressos na linguagem alvo mas não na linguagem fonte. footnote:[Se existir um processador que possa executar diretamente programas escritos na
linguagem fonte, não há necessidade de se traduzir o programa fonte para uma linguagem alvo.]
Se a tradução tiver sido feita corretamente, a execução do programa traduzido
vai obter exatamente os mesmos resultados que a execução do programa fonte
obteria se houvesse um processador que o executasse diretamente.
[IMPORTANT]
É importante observar a diferença entre tradução e interpretação. Na
tradução, o programa original, expresso na linguagem fonte, não é executado
diretamente. Em vez da execução direta, esse programa precisa ser convertido
para um programa equivalente, conhecido como programa objeto ou programa
binário executável, que será executado após o término do processo de
tradução.
binário executável, que será executado após o término do processo de tradução.
Logo, a tradução envolve dois passos distintos:
* Geração de um programa equivalente na linguagem alvo;
* Execução do programa obtido.
. Geração de um programa equivalente na linguagem alvo;
. Execução do programa obtido.
[NOTE]
No processo de interpretação existe apenas um único passo: a execução do
programa original na linguagem fonte.
......@@ -389,13 +390,15 @@ específica possam ser executados em um computador.
==== Tradutores
(((Tradutores)))
Os *((tradutores))* podem ser divididos em dois grupos, dependendo da relação
existente entre a linguagem fonte e a linguagem alvo.
((Montador))::
Quando a linguagem fonte for essencialmente uma representação simbólica para uma linguagem de
máquina numérica, o tradutor é chamado de montador e a linguagem fonte é chamada de linguagem de montagem.
Os tradutores podem ser divididos em dois grupos, dependendo da relação
existente entre a linguagem fonte e a linguagem alvo. Quando a linguagem fonte
for essencialmente uma representação simbólica para uma linguagem de
máquina numérica, o tradutor é chamado de montador e a linguagem fonte é
chamada de linguagem de montagem. Quando a linguagem fonte for uma linguagem de
((Compilador))::
Quando a linguagem fonte for uma linguagem de
alto nível, como é o caso do Pascal ou do C, e a linguagem alvo for uma
linguagem de máquina numérica ou uma representação simbólica desta
linguagem (linguagem de montagem), o tradutor é chamado de compilador.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment