Está en la página 1de 5

EXAMEN FINAL COMPILADORES

JESUS DARIO SIMANCA ALFARO


COD: 2010214118

1. Dada la siguiente gramtica G = ({S,L}, { (,)},a, ,) donde P es::
S (L)/a
L L, S / S
Construya la tabla SLR y realice la verificacin de cumplimiento de la
siguiente entrada:
((s, a),a)
S (L) (1)
S a (2)
L L, S (3)
L S (4)


S S
S (L)
S a
L L, S
L S

I
0
: S.S
S.(L)
S.a

(I
0, .
, S) I
1
: SS.
(I
0, .
, ()->I
2
: S (.L)
L.L,S
L.S
S.(L)
S.a

(I
0, .
, a)I
3
: Sa.
(I
2, .
, ()I
2

(I
2, .
, a)I
3

(I
2, .
, S)I
4

(I
2, .
, ()I
2
: LS.
(I
2, .
, L)I
5
: S(L.)
LL.,S

(I
5, .
, ))->I
6
: S(L).
(I
5, .
, ,)->I
7
: LL,.S
S.(L)
S.a

(I
7, .
, S)->I
8:
LL,S.
(I
7, .
, ()->I
2

(I
7, .
,a)->I
3

Sig L= {),}
Sig S= {$}
Sig (S) = {),$}

( ) a , $ S L
0 D2 D3 1
1 Aceptar
2 D2 D3 4 5
3 R2 R2 R2
4 R4 R4 R4
5 D6 D7 8
6 R1 R1 R1
7 D2 D3 8
8 R3 R3

Pila Entrada Accin
$ 0 ((s,a),a)$ d2
$ 0(2 (s,a),a)$ d2
S 0(2(2 S,a),a)$ No produce accin

Conclusin: La expresin no es aceptada.
2. Dada la gramtica :
S LP ; E
LP LP ; num | num
E num | var | fun (E)

i) Realice las transformaciones necesarias para eliminar la
recursividad por la izquierda.
S LP ; E
LP D LP
LP ; D LP|
D num
E D | var | fun (E)

ii) Calcular los conjuntos de PRIMEROS y SIGUIENTES de cada
no terminal.
Prim(S) = {num} Sig(S) = {$}
Prim(LP) = {num} Sig(LP) = {$}
Prim(LP) = {;, } Sig{LP) = {$}
Prim(D) = {num, (, ;, } Sig(D) = {; , )}
Prim(E) = {num, var, fun} Sig(E) = { ), $ }

iii) Construir la tabla de anlisis sintctico LL(1) para esta nueva
gramtica.


num var fun ( ) ; $
S
S LP ;
E


LP
LP D
LP

LP
LP ; D
LP
LP


D
D num D
num
D

D num
E
E D E
var
E fun
(E)


3. La siguiente es una definicin informal de un Lenguaje que genera
cadenas de smbolos formados por 0 y 1:

a) Las cadenas comienzan y terminan con 11.
b) Luego de los dos primeros unos puede o no contener una combinacin de
0 y 1, siempre que no queden 2 unos seguidos. Ejemplo: 110001011(vlido),
111001011(no vlido).
c) Los 2 unos del comienzo y los 2 unos del final no pueden estar contiguos.
Ejemplo: 1111(no vlido).
d) La cadena 11 es vlida.

Explicitar los elementos de una G.L.C. que defina formalmente el mismo
lenguaje.

La expresin regular es: 11(0)
+
(10)*11|11

La gramtica sera:

G = {{S, A, B, C},{0, 1}, S, P} donde P:

S 11AC11
A 0B
B 0B|
C 10C|

También podría gustarte