CS3402 Compiladores · 2026-1

Laboratorio de análisis sintáctico

Diseña gramáticas, construye tablas y observa simulaciones paso a paso para analizadores Top-Down y Bottom-Up.

AceptaPredictivo LL(1)
Pasos17
Conflictos0
Estados LR
TablaLL(1)

FIRST

E{ (, id }
E'{ +, ϵ }
T{ (, id }
T'{ *, ϵ }
F{ (, id }
({ ( }
){ ) }
*{ * }
+{ + }
id{ id }
ϵ{ ϵ }
${ $ }

FOLLOW

E{ ), $ }
E'{ ), $ }
T{ ), +, $ }
T'{ ), +, $ }
F{ ), *, +, $ }

Tabla predictiva LL(1)

No terminal$()*+id
EE -> T E'E -> T E'
E'E' -> ϵE' -> ϵE' -> + T E'
TT -> F T'T -> F T'
T'T' -> ϵT' -> ϵT' -> * F T'T' -> ϵ
FF -> ( E )F -> id

Simulación paso a paso

01
Pila: $ E' T EEntrada: id + id * id $Aplicar E -> T E'
02
Pila: $ E' T' F TEntrada: id + id * id $Aplicar T -> F T'
03
Pila: $ E' T' id FEntrada: id + id * id $Aplicar F -> id
04
Pila: $ E' T' idEntrada: id + id * id $Consumir id
05
Pila: $ E' T'Entrada: + id * id $Aplicar T' -> ϵ
06
Pila: $ E' T + E'Entrada: + id * id $Aplicar E' -> + T E'
07
Pila: $ E' T +Entrada: + id * id $Consumir +
08
Pila: $ E' T' F TEntrada: id * id $Aplicar T -> F T'
09
Pila: $ E' T' id FEntrada: id * id $Aplicar F -> id
10
Pila: $ E' T' idEntrada: id * id $Consumir id
11
Pila: $ E' T' F * T'Entrada: * id $Aplicar T' -> * F T'
12
Pila: $ E' T' F *Entrada: * id $Consumir *
13
Pila: $ E' T' id FEntrada: id $Aplicar F -> id
14
Pila: $ E' T' idEntrada: id $Consumir id
15
Pila: $ E' T'Entrada: $Aplicar T' -> ϵ
16
Pila: $ E'Entrada: $Aplicar E' -> ϵ
17
Pila: $Entrada: $Aceptar

Árbol

E
T
F
id
T'
ϵ
E'
+
T
F
id
T'
*
F
id
T'
ϵ
E'
ϵ