Trabalho Compiladores Parte I

3294 palavras 14 páginas
COMPILADORES – PARTE I
ANÁLISE LÉXICA

ALUNO: LIPIE AUGUSTO DE ALCÂNTARA SOUZA
Belo Horizonte, 18 de Maio de 2014.

COMPOSIÇÃO FUNCIONAL DO PROGRAMA – PARTE I – ANÁLISE LÉXICA

Nessa primeira parte do trabalho, foram implementados o Analisador Léxico e a Tabela de Símbolos. Trata-se do início da implementação do front-end de um compilador. Para essa implementação foi adotado o seguinte padrão de token:

<tipo do token, valor do atributo>
EX:
<RELOP, MAIOR>
<ID, total> onde tipo se refere ao “tipo do token” encontrado no arquivo fonte e valor é o seu atributo (se é um identificador, um literal, dentre outros). Estas são as palavras reservadas reconhecidas pelo compilador, bem como o seu respectivo token padrão:

ESPECIFICAÇÃO DE CLASSES – PARTE I – ANÁLISE LÉXICA

Classe CompiladorLinguagemX.java : Responsável por executar a Classe Analise Léxica, passando como parâmetro o arquivo de entrada de texto.
Classe AnalisadorLexico.java :
Funções:

private static boolean isCharacter(char ch) : Checa se o caractere dado como parâmetro é uma letra. (Importante para reconhecimento de identificadores).

private static boolean isDigit(char ch) : Checa se o caractere dado como parâmetro é um número. (Importante para reconhecimento de constantes).

private static void insereIDorCONST(String token) : Recebe uma “string” e símbolos da tabela ASCII que fora encontrada a partir de delimitadores durante a análise, e distingue se esta “string” é um identificador, constante inteira, constante de ponto flutuante, ou uma entrada inválida para a gramatica. Caso seja um padrão reconheci, armazena este “token” com suas devidas especificações, e caso seja um identificador, cria uma entrada na tabela de símbolos.

private boolean naoEhOperador(char c) : Reconhece delimitadores.

public void AnaliseLexica(String datapath) : (Método Principal) : Composto por uma sequencia de IF’S aninhados, responsáveis por

Relacionados

  • Agents Language: Uma Linguagem de Programação de Robôs
    3169 palavras | 13 páginas
  • Aula1
    2097 palavras | 9 páginas
  • prova compuladores
    1235 palavras | 5 páginas
  • Avaliação de Desempenho do OpenMP em Arquiteturas Paralelas
    13798 palavras | 56 páginas
  • Linguagem C Trabalho
    4045 palavras | 17 páginas
  • Algoritmo
    3101 palavras | 13 páginas
  • Analisador Semantico e Geracao de Codigo
    1733 palavras | 7 páginas
  • Academico
    794 palavras | 4 páginas
  • Apostila de dev C++
    7138 palavras | 29 páginas
  • 152901980213
    7138 palavras | 29 páginas