Compiladores

Disponível somente no TrabalhosFeitos
  • Páginas : 2 (362 palavras )
  • Download(s) : 0
  • Publicado : 7 de novembro de 2011
Ler documento completo
Amostra do texto
1) Um compilador pode ser dividido em 3 etápas:

Analisador léxico: O analisador léxico é o responsável por identificar os tokens dentro do código fonte, ou seja, ele varre o código fontecaractere a caractere identificando os lexemas e classificando-os (ex: palavras reservadas,delimitadores e identificadores) com base em uma tabela de símbolos pré-definida.
Analisador sintático: Oanalisador sintático é responsável por verificar se as estruturas das sentenças embutidas no código fonte estão corretas, para isso o analisador monta uma árvore sintática que pode partir de cima para baixoou de baixo para cima, sendo a segunda a melhor solução, e compara os nós folha (elementos terminais da gramática) da árvore com a tabela de símbolos(tokens).
Analisador semântico: Seu objetivo écaptar o significado das ações a serem tomadas no texto fonte. Porém sua formalização é algo muito complexo. Logo sua principal função torna-se criar a partir do texto fonte, uma interpretação destetexto, expressa em alguma notação adequada que é, geralmente, uma linguagem intermediária do compilador. Esta operação é realizada com base nas informações existentes nas tabelas construídas pelosoutros analisadores, tabelas de palavras reservadas, mapas e saídas dos demais analisadores.
2) O analisador léxico é quem varre o código fonte caractere a caractere classificando cada lexema ecriando seus tokens, também possui a função de encontrar erros de lexemas que não podem ser reconhecidos por nenhum padrão de token.

Ex:
Arquivo fonte linha 1:
String FelipeBonitao;
Nesse caso oanalisador léxico identifica os lexemas contidos 1 String(palavra reservada), 2 Felipe(id), 3;(pontuação) passando para o analisador sintático os 3 tokens (
3) Token é a classificação de umadeterminada cadeia de caracteres(lexema).

Lexema é o conjunto de caracteres em si ou seja um termo.
Padrão é a regra que determina o token.
Ex:
Token | Lexema | Padrão
If |IF | IF(palavra...
tracking img