Skip to content

Código inicial para o T1 da disciplina de compiladores 2025/1

Notifications You must be signed in to change notification settings

aagustini/t1-2025-asdr

Repository files navigation

Tarefa 1 - ASDR para a linguagem C--

Escrever um ASRD para a linguagem C--, abaixo. 

Prog --> ListaDecl

ListaDecl --> DeclVar ListaDecl | DeclFun ListaDecl | /* vazio */

DeclVar --> Tipo ListaIdent ';' DeclVar | /* vazio */

Tipo --> int | double | boolean

ListaIdent --> IDENT , ListaIdent
| IDENT

DeclFun --> FUNC tipoOuVoid IDENT '(' FormalPar ')' '{' DeclVar ListaCmd '}' DeclFun | /* vazio */

TipoOuVoid --> Tipo | VOID

FormalPar -> paramList | /* vazio */

paramList --> Tipo IDENT , ParamList | Tipo IDENT

Bloco --> { ListaCmd }

ListaCmd --> Cmd ListaCmd | /* vazio */

Cmd --> Bloco | while ( E ) Cmd | IDENT = E ; | if ( E ) Cmd RestoIf

RestoIf -> else Cmd | /* vazio */ E --> E + T | E - T | T

T --> T * F | T / F | F

F --> IDENT | NUM | ( E )

About

Código inicial para o T1 da disciplina de compiladores 2025/1

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published