Diferença entre compilador intérprete e montador

Índice:

Anonim

A principal diferença entre o interpretador do compilador e o montador é que cO ompiler converte todo o programa de linguagem de alto nível em linguagem de máquina de uma vez, enquanto o intérprete converte o programa de linguagem de alto nível em linguagem de máquina linha por linha e o assembler converte o programa de linguagem de montagem em linguagem de máquina.

Um programa de computador é um conjunto de instruções para que o computador execute uma determinada tarefa. A maioria dos programas é escrita em linguagens de alto nível ou linguagem assembly. Esses programas são fáceis de ler e entender pelos programadores, mas não podem ser entendidos pelo computador. O computador só entende linguagem de máquina. Consiste em binários que são uns e zeros. Portanto, o programa de alto nível ou assembly deve ser convertido em linguagem de máquina para que o computador entenda as instruções. Compilador, intérprete e montador são tradutores que convertem programas de alto nível ou baseados em linguagem assembly em linguagem de máquina.

Compilador, intérprete, montador

O que é compilador

Um compilador é um tradutor de linguagem que converte programas de alto nível em códigos de máquina compreensíveis por máquina. Nesse processo, o compilador converte todo o programa em código de máquina de cada vez. Se houver algum erro sintático ou semântico, o compilador irá indicá-lo. Ele verifica todo o programa e exibe todos os erros. Não é possível executar o programa sem corrigir esses erros.

Figura 1: Compilador

Linguagens de programação como C, C ++ usa um compilador para conversão de linguagem. O tempo de execução é menor nessas linguagens. Portanto, são consideradas linguagens rápidas.

O que é intérprete

Um intérprete também é um tradutor de linguagem que converte programas de alto nível em códigos de máquina. Ao contrário dos compiladores, os interpretadores convertem o código-fonte em código de máquina linha por linha. Como ele verifica linha por linha, o tempo de varredura é menor. Mas o tempo de execução geral é maior.

O intérprete exibe um erro por vez. O programador deve corrigir esse erro para interpretar a próxima linha. Linguagens de programação como Python, Ruby, PHP, Perl são alguns exemplos de linguagens baseadas em intérpretes.

O que é Assembler

Além das linguagens de alto nível e da linguagem de máquina, existe outra linguagem chamada linguagem assembly. A linguagem assembly está entre as linguagens de alto nível e a linguagem de máquina. Está mais próximo da linguagem de máquina do que das linguagens de alto nível. É também chamada de linguagem de baixo nível. Esta linguagem não é facilmente legível e compreensível pelo programador como uma linguagem de programação de alto nível. O montador funciona como o tradutor na conversão do programa de linguagem assembly em código de máquina.

Diferença entre compilador intérprete e montador

Definição

Um compilador é um software que converte programas escritos em linguagem de alto nível em linguagem de máquina. Um intérprete é um software que traduz um programa de linguagem de alto nível em linguagem de máquina, enquanto um montador é um software que converte programas escritos em linguagem de montagem em linguagem de máquina.

Funcionalidade

O compilador converte todo o programa de linguagem de alto nível em linguagem de máquina de cada vez. O intérprete converte o programa de linguagem de alto nível em linguagem de máquina, linha por linha. Em contraste, o assembler converte o programa de linguagem assembly em linguagem de máquina.

Língua

Linguagens como C, C ++ usam compiladores para converter o código. Linguagens como Ruby, Perl, Python, PHP usam um interpretador e a linguagem assembly usa um assembler.

Conclusão

Compiler, Interpreter e Assembler são tradutores de linguagem. A diferença entre o interpretador do compilador e o assembler é que o compilador converte programas inteiros de linguagem de alto nível em linguagem de máquina ao mesmo tempo, enquanto o interpretador converte programas de linguagem de alto nível em linguagem de máquina linha por linha e o assembler converte programas de linguagem assembly em linguagem de máquina.

Referência:

1. “O que é Assembler, Interpreter & Compiler? (Em inglês) ”, Exam Study Zone, 9 de setembro de 2017, disponível aqui.2. “Introdução à montagem.” Tutorials Point, 19 de março de 2018, disponível aqui.

Cortesia de imagem:

1. “Compilador” de I, Surachit (CC BY-SA 3.0) via Commons Wikimedia

Diferença entre compilador intérprete e montador