O que é o Compilador

Por Bester PCBA

Última atualização: 2023-10-24

O que é o Compilador

Um compilador é um programa de computador utilizado para traduzir linguagens de programação de alto nível, como o C, em linguagem de montagem ou código de máquina. O seu objetivo principal é converter código legível por humanos num formato que possa ser executado por uma plataforma de hardware específica. O processo envolve a análise do código fonte, a verificação de erros e a geração de código de máquina optimizado.

A correção do compilador é crucial na engenharia de software, garantindo que um compilador se comporta de acordo com a especificação da sua linguagem. As técnicas utilizadas para alcançar a correção do compilador incluem a utilização de métodos formais durante o desenvolvimento do compilador e testes rigorosos, muitas vezes referidos como validação do compilador, em compiladores existentes.

Existem diferentes tipos de compiladores com base na sua plataforma e linguagem de destino. Os compiladores nativos ou alojados produzem resultados que podem ser executados diretamente no mesmo computador e sistema operativo que o próprio compilador. Os compiladores cruzados, por outro lado, geram código destinado a ser executado numa plataforma diferente. Os compiladores para máquinas virtuais produzem código destinado a ser executado numa máquina virtual e não diretamente no hardware subjacente.

Outros tipos de compiladores incluem os compiladores source-to-source, que transformam o código e o anotam com anotações de código paralelo ou construções de linguagem. Os compiladores de bytecode compilam o código-fonte na linguagem de montagem de uma máquina teórica, enquanto os compiladores Just-in-Time (JIT) adiam a compilação até ao momento da execução para aumentar o desempenho. Os compiladores de hardware, também conhecidos como ferramentas de síntese, utilizam uma linguagem de descrição de hardware como entrada e produzem uma descrição de uma configuração de hardware.

Termos relacionados

Artigos relacionados

Deixar um comentário


O período de verificação do reCAPTCHA expirou. Por favor, recarregue a página.

pt_PTPortuguese