Está en la página 1de 4

UNIVERSIDAD INTERNACIONAL DE

CIENCIA Y TECNOLOGÍA (UNICYT)

MAESTRÍA EN CIENCIAS DE LA
COMPUTACIÓN
CON ÉNFASIS EN VIRTUALIZACIÓN

Diseño e Implementación de
Procesadores de Lenguaje

Profesor: Federico Flaviani

TAREA 3
Ruth Noemi Ramírez
Santamaria de Phillips
Tarea 3
1. Sea Σ = {+, (, ), n} un alfabeto y G = ({E},Σ, P,E) una gramática donde su conjunto
de producciones P es el siguiente:

E→E+E
E → (E)
E→n

LR(0)-Context (E → E+E)={ E+E }


LR(0)-Context (E → (E)={ (E) }
LR(0)-Context (E → n)={n}

a. Construya el asociado a la gramática anterior y determine si existe conflictos y


de que tipos.
Prefijos viables
{lambda, E, E+, E+E, (, ), (E), n}

1. E → .E+E
2. E → E.+E
3. E → E+.E
4. E → E+E.
5. E → .(E)
6. E → (.E)
7. E → (E.)
8. E → (E).
9. E → .n
10. E → n.
No se encontraron conflictos,
esta gramática es LR(0).

b. Con el autómata de la parte anterior construya la tabla de parsing SLR(0), si


existe un conflicto Shift-Reduce detectado en la parte anterior, use el Reduce
en lugar del Shift.

1. E → E + E
2. E → (E)
3. E → n

Terminales Go to
( ) + n E E E
1 3 Shift 2 Shift 4
2 Reduce3 Reduce3 Reduce3 Reduce3
3 7
4 5 Shift
5 6
6 Reduce1 Reduce1 Reduce1 Reduce1
7 8 Shift
8 Reduce2 Reduce2 Reduce2 Reduce2
c. Utilizando la tabla de parsing SLR(0) construida, procese la frase:
n + n + (n)
Nota: En cada paso debe mostrar el contenido de la pila, la frase por consumir, la
producción escogida (si el paso realizado es un reduce), y la acción (si se hizo shift
o reduce).

Pila Consumido Producción Acción


1 n+n+(n) shift
1n2 +n+(n) E→n reduce
1E4 +n+(n) shift
1E4+5 n+(n) shift
1E4+5n2 +(n) E→n reduce
1E4 +(n) shift
1E4+ (n) shift
1E4+5(3 n) shift
1E4+5(3n2 ) E→n reduce
1E4 ) shift
1E4)

También podría gustarte