Ícone do site Celso Kitamura

O Que É Compilador?

O Que É Compilador
4.7/5 - (6 votes)

Agora que você já sabe o que é código fonte, vamos ver um pouco mais além?

 

Nesse vídeo eu vou te mostrar como ele é transformado em linguagem de máquina.

 

Vamos conversar sobre o que é compilador.

 

O Que É Compilador?

 

Basicamente o compilador é um programa que processa comandos escrito em uma linguagem de programação específica e o “traduz” em linguagem de máquina ou “código” que o processador utiliza.

 

Como Funciona?

 

Agora que vimos o que é compilador, vamos ver como ele funciona.

 

O nome compilador vem da forma como ele funciona, observando o código-fonte inteiro e coletando e reorganizando suas instruções.

 

Um compilador é diferente de um interpretador, que analisa e executa cada linha de código fonte em sequência, sem olhar para todo o programa.

 

A vantagem dos interpretadores é que eles podem executar um programa imediatamente.

 

Compiladores exigem uma etapa anterior: a criação de um programa executável.

 

No entanto, os programas produzidos pelos compiladores são muito mais rápidos do que os mesmos programas executados por um interpretador.

 

Normalmente o programador escreve seu programa em uma linguagem (como C) utilizando um editor. O arquivo criado desta forma também é chamado de código-fonte.

 

Já conversamos sobre o que é código fonte em outro vídeo: https://youtu.be/eGBSnoCaSP0

 

O programador então executa o compilador específico sobre este arquivo.

 

Ao ser executado, o compilador primeiro analisa todas as instruções de linguagem sintaticamente uma após a outra e então, em uma ou mais etapas sucessivas ou “passagens”, constrói o código de saída, certificando-se de que as instruções que se referem a outras instruções são referidas corretamente no código final.

 

Tradicionalmente, a saída da compilação tem sido chamada de objeto-código (object code) ou às vezes um módulo objeto (object module). O objeto é código de máquina que o processador pode executar, uma instrução de cada vez.

 

Evolução

 

A linguagem de programação Java introduziu a possibilidade de compilação de saída (chamada bytecode) que pode ser executada em qualquer plataforma de sistema de computador que possua uma máquina virtual Java ou intérprete de bytecode para converter o bytecode em instruções que podem ser executados pelo processador de hardware real.

 

Usando esta máquina virtual, o bytecode pode opcionalmente ser recompilado na plataforma de execução por um compilador just-in-time.

 

Tradicionalmente, em alguns sistemas operacionais, era necessária uma etapa adicional após a compilação – a de resolver a localização relativa de instruções e dados quando mais de um módulo de objeto deveria ser executado ao mesmo tempo e eles se referiam mutuamente a sequências de instruções ou dados.

 

Este processo foi às vezes chamado de edição de ligação (linkage editing) e a saída conhecida como um módulo de carga (load module).

 

Palavras Finais

 

Vimos hoje o que é compilador.

 

Além do Java, o .NET também funciona produzindo um objeto intermediário a partir do código fonte em C#, por exemplo.

 

Esse objeto é feito com a IL (Intermediate Language) e é executado pelo .NET Framework.

 

Meu e-book Como Aprender a Programar do Absoluto Zero está GRATUITO por tempo limitado!

Olha o link: 👉🏼 http://celsokitamura.com.br/como-aprender-a-programar

Bora aprender a programar!

 

Sair da versão mobile