0% acharam este documento útil (0 voto)
112 visualizações4 páginas

02 - Processo de Compilação PDF

O documento descreve o processo de compilação, dividido em fases como análise léxica, sintática e semântica. Explica como a compilação ocorre em Java, convertendo código-fonte em bytecode, e no C#, gerando código intermediário .NET.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
112 visualizações4 páginas

02 - Processo de Compilação PDF

O documento descreve o processo de compilação, dividido em fases como análise léxica, sintática e semântica. Explica como a compilação ocorre em Java, convertendo código-fonte em bytecode, e no C#, gerando código intermediário .NET.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 4

Processo de Compilação

Quando se fala em programas, geralmente se está falando dos


códigos-fonte escritos em linguagens de programação de alto nível, ou seja,
com um nível de abstração muito grande, mais próximo do modo “humano” de
se pensar. Em contrapartida, existe o código executável que é um código feito
numa linguagem de baixo nível de abstração, muito mais próxima do modo de
funcionamento das máquinas do que do raciocínio humano. Existem duas
formas de se transformar um programa escrito em uma linguagem de alto nível
em um código capaz de ser executado por um dispositivo computacional, são
elas: o compilador e o interpretador.
Este artigo tem como objetivo introduzir o conceito de compilação,
explicando os passos necessários para que um programa possa ser compilado.
Duas linguagens, Java e C#, foram escolhidas para demonstrarem como o
processo de compilação pode ser feito de diferentes formas.

PROCESSO DE COMPILAÇÃO
Compilação é o processo de tradução de um código fonte escrito
normalmente em uma linguagem de alto nível (de fácil entendimento por parte
do programador) para uma linguagem de baixo nível. Um compilador é um
programa responsável por executar os processos de compilação descritos a
seguir.

▪ FASES DA COMPILAÇÃO

• Análise Léxica
Esta é a primeira etapa da compilação. A função do analisador léxico,
também conhecido como scanner, é analisar todo o código fonte e produzir
símbolos (tokens) que podem ser manipulados na etapa seguinte. Nesta etapa
são eliminados os espaços em branco e comentários.

• Análise Sintática
O analisador sintático (parsing) é quem dá significado às sequências de
tokens criadas anteriormente.

• Análise Semântica
Esta etapa é responsável por analisar a semântica, ou significado, de
cada elemento do código. É ele quem encontra erros como, por exemplo, uma
multiplicação entre tipos de dados diferentes.

• Geração do Código Intermediário


Nesta etapa ocorre a conversão da árvore sintática, criada na etapa 2,
em uma representação intermediário do código fonte.
• Otimização do Código
Nesta etapa o código é otimizado para uma determinada arquitetura
(hardware e sistema operacional especifico).

• Geração de Código Final


Nesta ultima etapa da compilação, o arquivo executável (.exe) é criado,
otimizado para aquela arquitetura.
COMPILAÇÃO NO JAVA

Na linguagem Java o processo de compilação ocorre da seguinte maneira:


1. O código fonte (extensão .java) é compilado utilizando o javac (Java
Compiler) e armazenado em um arquivo de extensão .class, também conhecido
como bytecode.
2. Em seguida a JVM (Java Virtual Machine), interpreta os bytecodes produzidos
pelo compilador.
3. O JIT (Just-In-Time) converte, em tempo de execução, o código em bytecode
para código de máquina.
4. Por ultimo, fica a cargo do Sistema Operacional em questão executar o
programa.

• Exemplo de um código, “Hello World”.


public class HelloWorldConsole {
public static void main(String args[]) {
System.out.println("Hello, World!!!");
}
}

COMPILAÇÃO NO C#
Na linguagem C# o processo de compilação é bastante semelhante ao do
Java. Uma das grandes diferenças é a possibilidade de utilizar várias
linguagens distintas em um mesmo programa, como pode ser observado mais
abaixo.
1. O código-fonte (extensão .cs) é compilado em uma linguagem intermediária
(IL). “O código IL, juntamente com recursos como bitmaps e sequências de
caracteres, são armazenados em disco em um arquivo executável chamado de
assembly, normalmente com uma extensão .exe ou .dll.” (MSDN)
2. Diferente do Java, que utiliza a JVM, o C# utiliza o .NET Framework que trás
consigo o CLR (Common Language Runtime), o componente encarregado de
gerenciar aplicações desenvolvidas em .NET.
No CLR existe o JIT que é o responsável por converter, em tempo de
execução, o código em IL para código de máquina, bem parecido com o Java.
3. Com o código nativo gerado, fica a cargo do Sistema Operacional executar o
programa.

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy