Buscar

Independentemente da arquitetura de computadores, e podemos tomar como base o modelo da arquitetura de Von Newmann, tanto o processo de compilação ...

Independentemente da arquitetura de computadores, e podemos tomar como base o modelo da arquitetura de Von Newmann, tanto o processo de compilação quanto o processo de interpretação são possíveis.

É fato que programadores de computadores ficam em dúvidas quanto à diferenciação da compilação e da interpretação de programas. Muitas das vezes, isso ocorre por falta de conhecimento aprofundado acerca da arquitetura de computadores e de como os programas são executados nas máquinas.

Tomando como base as etapas de um ciclo de máquina apresentadas por Corrêa (2016), faça a representação gráfica dos dois processos, compilação e interpretação, explicando, no final, a real diferença existente entre eles.

Representação Gráfica dos dois Processos

COMPILADOR INTERPRETADOR
Ler uma instrução no algoritmo Ler uma instrução no algoritmo
Depurar somente a instrução lida Depurar somente a instrução lida
Traduzir a instrução lida para linguagem de máquina Traduzir a instrução lida para linguagem de máquina
Seguir para próxima instrução na sequência do algoritmo Executar a instrução traduzida
Manter o ciclo acima em execução até o fim do algoritmo Seguir para próximo instrução na sequência do algoritmo
Executar o algoritmo totalmente traduzido e em linguagem de máquina
Manter o ciclo acima em execução até o fim do algoritmo

Compilador x Interpretador
A diferença está na forma de execução, o compilador é o processo de alto nível para uma linguagem de máquina, analisa o código por inteiro a fim de traduzir de uma única , C++ e Swift figuram na lista de compiladas.

Vantagens:

O código compilado é mais rápido de ser acessado;
Impossibilita ou pelo menos dificulta ser quebrado e visualizado o código-fonte original;
Permite otimização do código por parte do compilador;
Compila o código somente se estiver sem algum erro.
Desvantagens:

Para ser utilizado o código precisa passar por muitos níveis de compilação;
Assim como vantagem a possibilidade de não poder visualizar o código-fonte, pode ser uma desvantagem;
Processo de correção ou alteração do código requer que ele seja novamente recompilado. Segundo Processo Interpretador

O programa conversor recebe a primeira instrução do programa fonte, confere para ver se está escrita corretamente, converte-a em linguagem de máquina e então ordena ao computador que execute esta instrução. Depois repete o processo para a segunda instrução, e assim sucessivamente, até a última instrução do programa fonte. Quando a segunda instrução é trabalhada, a primeira é perdida, isto é, apenas uma instrução fica na memória em cada instante. Se este programa fonte for executado uma segunda vez, novamente haverá uma nova tradução, comando por comando, pois os comandos em linguagem de máquina não ficam armazenados para futuras execuções. Neste método, o programa conversor recebe o nome de Interpretador ele executa diretamente cada instrução, passo a passo. MATLAB, Lisp, Perl e PHP são apontadas como interpretadas.

Vantagens:

Correções e alterações são mais rápidas de serem realizadas;
Código não precisa ser compilado para ser executado;
Consomem menos memória.
Desvantagens:

Execução é mais lenta do programa;
Necessita sempre ser lido o código original para ser executado;


Essa pergunta também está no material:

Trabalho AVA 2 - Compilação x Interpretação - Organização e Arquitetura de Computadores UVA UNIVERSIDADE VEIGA DE ALMEIDA
4 pág.

Organização e Arquitetura de Computadores Universidade Veiga de AlmeidaUniversidade Veiga de Almeida

💡 1 Resposta

User badge image

Ed Verified user icon

A diferença entre o processo de compilação e interpretação de programas está relacionada à forma como o código fonte é executado. No processo de compilação, o código fonte é traduzido por completo para linguagem de máquina antes de ser executado. O compilador analisa o código como um todo, realiza otimizações e gera um arquivo executável. Esse arquivo pode ser executado diretamente pelo sistema operacional, sem a necessidade de recompilação. Exemplos de linguagens compiladas são C, C++ e Swift. Já no processo de interpretação, o código fonte é lido e executado linha por linha, sem a necessidade de gerar um arquivo executável. Um interpretador lê cada instrução do programa fonte, converte-a em linguagem de máquina e a executa imediatamente. A interpretação ocorre em tempo real, sem a necessidade de compilação prévia. Exemplos de linguagens interpretadas são MATLAB, Lisp, Perl e PHP. Vantagens da compilação: - Código compilado é mais rápido de ser executado. - Dificulta a visualização do código-fonte original. - Permite otimizações do compilador. - O código só é compilado se estiver sem erros. Desvantagens da compilação: - Requer múltiplos níveis de compilação. - Dificulta a visualização do código-fonte. - Alterações no código exigem nova compilação. Vantagens da interpretação: - Correções e alterações são mais rápidas de serem realizadas. - Código não precisa ser compilado para ser executado. - Consome menos memória. Desvantagens da interpretação: - Execução do programa é mais lenta. - Sempre é necessário ler o código original para executá-lo. Espero ter esclarecido a diferença entre compilação e interpretação de programas. Se tiver mais alguma dúvida, é só perguntar!

0
Dislike0

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais