Analisador Sintatico

1. Analisador Sintatico

Renan Tebaldi Barreto
rtbarreto

(usa Ubuntu)

Enviado em 26/11/2013 - 09:12h

Bom dia pessoal, tudo certo ?
Gostaria de uma ajuda de vocês, tenho um codigo de um analisador sintatico em portugol, preciso passar pra c mais tenho muita dificuldade para programar. se alguem poder ajudar ficarei muito grato.
segue abaixo o codigo que fiz em portugol

VALIDA PROGRAMA(){
SE '{' OK SENAO NOK
VALIDA_COMANDOS
SE '}' OK SENAO NOK
}

VALIDA_COMANDOS(){
WHILE (FINAL DO ARQUIVO NÃO CHEGAR){
CASE 'DECLARA_VARIAVEL': VALIDA_DECLARACAO
CASE 'VARIAVEL': VALIDA_ATRIBUICAO
CASE 'IF':
...
}
}

VALIDA_ATRIBUICAO(){
SE '=' OK NAO NOK
VALIDA_EXPRESSAO
}

VALIDA_EXPRESSAO(){
}

VALIDA_DECLARACAO()
SE 'VARIAVEL' OK SENAO NOK
SE ',' VALIDA_DECLARACAO
SE ';' OK SENAO NOK
}

VALIDA_IF(){
LER TOKEN
SE '(' OK SENAO NOK
VERIFICA_CONDICAO
SE ')' OK SENAO NOK
VERIFICA_COMANDOS
}


  


2. Ferramenta

Renan Tebaldi Barreto
rtbarreto

(usa Ubuntu)

Enviado em 26/11/2013 - 09:56h

Achei uma ferramenta muito legal para geração de analisadores tanto lexico como sintatico. mais não to conseguindo usar, alguem pode ajudar ? a ferramenta se chama GALS


3. Re: Analisador Sintatico

???
gokernel

(usa Linux Mint)

Enviado em 26/11/2013 - 15:14h

Está tentando fazer uma "linguagem" ???

Iniciei o desenvolvimento de um "compilador" ( C-like ) e ele usa essas etapas:

01 - Lê uma string usando uma funcao : get_token().

02 - Armazena esses tokens em uma lista: AST(abstract syntax TOKEN).

03 - Faz o loop( stmt ) lendo a AST e gerando o código em linguagem de máquina ( x86 32 bits) ;

Atualmente está disponível a versão 0.26.0 para download mas a 0.27.0 está melhor ... BETA.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts