Código em C de um analisador léxico

1064 palavras 5 páginas
/*Variáveis: programa, bloco, const-decl, const-decl', var-decl, proc-decl, statement, condição, relação, expressão, operador-adição termo, operador-multiplicação, fator, identificador, número Gramática: Programa -> Bloco. Bloco -> Const-decl Var-decl Proc-decl Statment Const-decl -> const Identificador = Numero Const-decl';| lambda Const-decl' -> ,Identificador = Numero Const-decl' | lambda Var-decl -> var Identificador Var-decl';|lambda Var-decl' -> ,Identificador Var-decl'| lambda Proc-decl -> procedure Identificador; Bloco; Proc-decl| lambda Statement -> Identificador := Expressao | call Identificador | begin Statement Statement' end | if Condicao then Statement | while Condicao do Statement Statement' -> ; Statement | lambda Condicao -> Expressao Relacao Expressao Relacao -> = | | < | > | = Operador-adicao -> + | - Termo -> Fator Termo' Termo' -> Operador-mult Fator Termo' | lambda Operador-mult -> * | / Fator -> Identificador | Numero | (Expressao) Digito -> 0 | 1 ... | 9 Numero -> Digito Numero| lambda Letra -> a | b ... | z | A | B ... | Z Identificador -> Letra Combinacao Combinacao -> Letra Combinacao | Digito Combinacao | lambda TOKENS: Identificador; Numero; AbreParentese; FechaParentese; Operador-mult; Operador-adicao; Operador-relacao; PontoEVirgula; Atribuicao; Ponto; Virgula; PalavraReservada (const, var, procedura, call, begin, end, if, then, while, do)

*/ #define _GNU_SOURCE
#include
#include int ehLetra(char caracter); int ehDigito(char caracter); int ehPalavraReservada(int posicaoInicial, int posicaoFinal, char

Relacionados

  • Analisador L xico
    3900 palavras | 16 páginas
  • compiladores
    4026 palavras | 17 páginas
  • Desenvolverdor
    1464 palavras | 6 páginas
  • Aula 03 An Lise L Xica
    1002 palavras | 5 páginas
  • Interpretadores de comandos
    2457 palavras | 10 páginas
  • ANALISE LÉXICAS (LEX)
    2678 palavras | 11 páginas
  • Trabalho Lex Bom
    1841 palavras | 8 páginas
  • Compiladores
    1494 palavras | 6 páginas
  • trabalho compiladores luciane unirp
    865 palavras | 4 páginas
  • Compiladores
    1894 palavras | 8 páginas