Linha 25: Linha 25:
= Análise Semântica =
= Análise Semântica =
<br>
<br>
A análise semântica é a terceira parte da compilação, essa é a parte onde se verifica os erros do código fonte. Essa parte tem como objetivo de trabalhar nesse nível de inter-relacionamento entre partes distintas do programa. As tarefas básicas desempenhada durante a análise semântica incluem a verificação de tipos, a verificação do fluxo de controle e a verificação da unicidade da declaração de variáveis. Dependendo da linguagem de programação, outros tipos de verificações podem ser necessários.


= Exemplos de compiladores =
= Exemplos de compiladores =

Edição das 20h32min de 18 de abril de 2016

Esta pesquisa deve fornecer um conteúdo atualizado sobre o tema acima. Não esqueça de incluir as  
referëncias (fontes) no último item, reforçando que não deve ser um Copy/Paste e sim uma síntese 
das pesquisas que fizer.


Conceito


Compiladores nada mais é que um programa que recebe e converte uma linguagem de fácil escrita e leitura, feita por programadores em uma linguagem que possa ser conhecida e executada por máquina. Porém para ser passado por esse processo de reconhecimento de escrita na máquina o compilador tem 3 fases de processamento e analise chamadas: Análise Léxica, Análise Sintática e Análise Semântica.

Princípio de funcionamento


Análise Léxica


O analisador Léxico faz a varredura do programa fonte, analisando caractere por caractere e traduz em uma sequência de símbolos léxicos ou tokens (“símbolos”). É nessa fase que são reconhecidas as palavras reservadas, constantes, identificadores e outras palavras que pertencem a linguagem de programação. O analisador léxico executa também outras tarefas como por exemplo o tratamento de espaços, eliminação de comentários, contagem do número de linhas que o programa possui e etc. A parte léxica é a primeira parte da compilação, tendo nessa parte dois estados de análise. A análise léxica ela e posta em dois estados. O Primeiro estado é o SCANNING onde ele remove os comentários os espaços desnecessários e etc. Já o segundo estado é a própria análise Léxica onde ela agrupa os caracteres em tokens (“símbolos”). Tokens ou símbolos > São unidades logicas que representam um ou mais caracteres.

Análise Sintática


A análise sintática que é a segunda parte da compilação que é o processo de analisar uma sequência gramatical de entrada para determina sua estrutura gramatical segundo uma gramatica formal a parte de analise sintática pode ser também conhecida como “parsing” palavra em inglês. Dada uma gramática livre do contexto G e uma sentença S, o objetivo do analisador sintático é verificar se a sentença S pertence à linguagem gerada por G. O analisador sintático, recebe do analisador léxico a sequência de tokens (“símbolos”) que constitui a sentença S e produz como resultado uma árvore de derivação para S, se a sentença é válida, ou emite uma mensagem de erro, caso contrário.

Análise Semântica


A análise semântica é a terceira parte da compilação, essa é a parte onde se verifica os erros do código fonte. Essa parte tem como objetivo de trabalhar nesse nível de inter-relacionamento entre partes distintas do programa. As tarefas básicas desempenhada durante a análise semântica incluem a verificação de tipos, a verificação do fluxo de controle e a verificação da unicidade da declaração de variáveis. Dependendo da linguagem de programação, outros tipos de verificações podem ser necessários.

Exemplos de compiladores


Referências bibliográficas