0% encontró este documento útil (0 votos)
385 vistas12 páginas

Ejercicios de Análisis Sintáctico

Este documento presenta ejercicios sobre análisis sintáctico recursivo descendente y LL(1). Incluye ejemplos de gramáticas y cadenas de entrada con sus respectivas soluciones, mostrando las acciones del analizador. También presenta ejercicios para calcular los conjuntos primero y siguiente de diferentes gramáticas y comprobar si son LL(1).

Cargado por

Eduyzeu
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
385 vistas12 páginas

Ejercicios de Análisis Sintáctico

Este documento presenta ejercicios sobre análisis sintáctico recursivo descendente y LL(1). Incluye ejemplos de gramáticas y cadenas de entrada con sus respectivas soluciones, mostrando las acciones del analizador. También presenta ejercicios para calcular los conjuntos primero y siguiente de diferentes gramáticas y comprobar si son LL(1).

Cargado por

Eduyzeu
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Recursividad: ejercicios

Obt
Obtener las
l gramáticas
áti que producen:
d

1.
1 U o más
Una á aes con recursividad
i id d por lla iizquierda
i d ((r.i)
i)
Procesadores de lenguaje 2.
3.
Cero o más aes (r.i)
Una o más aes con recursividad por la derecha (r.d)
Ejercicios de análisis sintáctico 4. Cero o más aes (r.d)
5. Una b y cero o más aes (r.i)
Salvador Sánchez
Sánchez, Daniel Rodríguez 6
6. Cero o más aes terminando en b (r(r.d)
d)
Departamento de Ciencias de la Computación 7. Cero o más aes separadas por ‘;’ (r.d)
Universidad de Alcalá
8. Una o más aes separadas por ‘;’ (r.i)

Procesadores de lenguaje – Ejercicios Análisis Sintáctico


Salvador Sánchez, Daniel Rodríguez

Soluciones Analizador descendente recursivo

1. A->Aa
1 A A |a • Ejemplos:

2. A->Aa | ε 1. Mostrar las acciones de un analizador descendente recursivo que analiza la


cadena “aaab” según la gramática: A ÆaA | b
3. A->aA | a
4. A->aA | ε 2. Para la gramática anterior, analizar la cadena “abaab”.

5. A->Aa | b 3. Mostrar las acciones de un analizador descendente recursivo que analiza la


cadena “aba” según la gramática: A Æab | aA
6. A->aA | b
7. A->aB | ε 4. Mostrar las acciones de un analizador descendente recursivo para la cadena
de entrada “IDENT()” según la gramática:
B->;aB | ε
S t
Sentencia
i Æ Asignación
A i ió | Llamada
Ll d | otro
t
8. A->A;a | a Asignación Æ Identificador := Valor
LlamadaÆ Identificador ()

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador LL(1) – Conjunto primero Analizador LL(1) - Conjunto primero

1.Calcular
1 C l l ell conjunto
j t Primero
Pi d A para lla gramática
de áti 1 C j t Primero
1.Conjunto Pi d A para lla gramática
de áti siguiente:
i i t
siguiente: AÆ (A)A | ε
AÆ (A)A | ε
SOLUCIÓN: Primero(A) = { ( , є }

2.Calcular el conjunto Primero de los no terminales A, B y 2.Conjunto Primero de los no terminales A, B y C:


C para la gramática siguiente:
AÆ BC
AÆ BC BÆ ε | m
BÆ ε | m CÆ ε | s
CÆ ε | s
SOLUCIÓN: Primero(A) = {m, s, є}, Primero(B) = {m, є}, Primero(C) = {s, ε}

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez

Analizador LL(1) - Conjunto siguiente Analizador LL(1) - Conjunto siguiente

1. Solución:
• Ejemplo
Ej l 1:
1 • Ejemplo
Ej l 3:
3 Prim(S)={a}, Prim(B)={b}, Prim(C)={c}
Sig(S)={$}, Sig(B)={c}, Sig(C)={d}

S Æ aBCd
BCd S Æ aBCd
BCd 2. Solución:
B Æ bb B Æ CB | b Prim(S)={a}, Prim(B)={b,d}, Prim(C)={c}
C Æ cc C Æ cc | ε Sig(S)={$}, Sig(B)={c}, Sig(C)={d}

3. Solución:
• Ejemplo 2: • Ejemplo 4: Prim(S)={a}, Prim(B)={b,c}, Prim(C)={c, ε}
Sig(S)={$}, Sig(B)={c,d} Sig(C)={b,c,d}
S Æ aBCd
S Æ if B then S | write B | id := B 4. Solución:
B Æ bB | d
B Æ id = id | id <> id | true | false Prim(S)={if, write, id}, Prim(B)={id, true, false}
C Æ cc Sig(S)={$}, Sig(B)={then, $}

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador LL(1) - Análisis Solución

1. Comprobar si la siguiente gramática es LL(1) y construir la Pasos para ver si es LL(1):


tabla, calculando todos los conjuntos Siguiente y Primero.
1.-- No es recursiva a izquierdas
1 izquierdas.
S → cA 2.- B→ b | є
A → aB 2.1. Prim(b) ∩ Prim(ε) = vacío
B→b|ε 2 2 Si ε ∈ Prim(ε) =>
2.2. > Prim(b) ∩ Sig(B) = vacío

Conjuntos
j primero:
p
2. Reconocer la cadena “cab” con el analizador construido. Prim(S)={c} Prim(A)={a} Prim(B)={b, ε}

Conjuntos siguiente:
Sig(S)={$} Sig(A)=Sig(S)={$} Sig(B)=Sig(A)={$}

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez

Solución Solución

Tabla de análisis: Reconocer la cadena “cab”

c a b $
$S cab$
S $Ac Reconocimiento cab$
S → cA
A
$A A→aB ab$
A
A → aB $Ba Reconocimiento ab$
B B→b B→ε $B B→b b$
$b Reconocimiento b$
$ éxito $

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador LL(1) - Análisis Solución

1 C
1. Comprobar
b sii la
l siguiente
i i t gramática
áti es LL(1) y construir
t i la
l Prim (E) = { ((, id } Sig (E) = { $,
Si $ )}
tabla de análisis y todos los conjuntos Siguiente y Primero. Prim (E’) = { +, є } Sig (E’) = { $, ) }
Prim (T) = { (, id } Sig (T) = {+ {+, $
$, )}
E Æ TE’ Prim (T’) = { *, є } Sig (T’) = { +, $, )}
E’ Æ +TE’ | є Prim (F) = { (, id } Sigg ((F)) = {{*,+, $, )}
T Æ FT
FT’
T’ Æ *FT’ | є
F Æ (E) | id

2. Reconocer la cadena “(3+5*8)” con el analizador construido.

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez

Solución Analizador LL(1) - Análisis

Reconocimiento de la cadena: (3+5*8) 1 A partir


1. ti d
de la
l siguiente
i i t gramática,
áti construir
t i lal tabla
t bl de
d análisis
áli i
y todos los conjuntos Siguiente y Primero.

B -> DL
D -> id ; D | є
L ->
>S;L|є
S -> a + a

2. Reconocer la cadena “id;a+a;” con el analizador construido.

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador LL(1) - Análisis Analizador LL(1) - Análisis
Pila Decisión Entrada
Prim(B)
P i (B) = { id
id, a, ε } Sig(B)
S ( )={$} $B BÆDL id;a+a;$
Reconocer:
Prim(D) = { id, є } Sig(D) = { a, $ } $LD DÆid;D id;a+a;$
id;a+a;
Prim(L) = { a
a, є } Sig(L) = { $ } $LD;id Reconocer id id;a+a;$
Prim(S) = { a } Sig(S) = { ; } $LD; Reconocer ; ;a+a;$
$LD DÆє a+a;$
$L LÆS;L a+a;$
$ id ; a + $L;S SÆa+a a+a;$
B BÆDL BÆDL - BÆDL - $L;a+a Reconocer a a+a;$
D DÆє DÆid;D - DÆ є - $L;a+ Reconocer + +a;$
$L;a Reconocer a a;$
L LÆє - - ;
LÆS;L -
$L; Reconocer ; ;$
S - - - SÆa+a -
$L LÆє $
$ EXITO $

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez

Analizador LR(0) - Análisis Analizador LR(0) - Análisis


S1
E’ Æ E.
E
1 A partir
1. ti d
de la
l siguiente
i i t gramática,
áti construir
t i ell autómata
tó t finito
fi it
E
determinista y la tabla de análisis para el analizador LR(0). S0 S2 S3
(
E’Æ.E E Æ (.E+T)
( E Æ .(E+T)
(E+T) E Æ (E.+T)
(E +T)
E Æ.(E+T)
Æ (E T) E
EÆ .id E Æ .id
E Æ (E + T) | id id id
T Æ (T * F) | id S13 +
E Æ id.
id
F Æ id S4
S8 E Æ (E+.T)
T Æ .(T*F)
T Æ (T.*F) T ( T Æ .id
S6
2. (6+(4 2)) .
2 Reconocer la cadena “(6+(4*2))” * T Æ (.T*F)
T
S5
id
S9 T Æ .(T*F) ( E Æ (E+T.)
T Æ .id
T Æ (T*.F) S14
FÆ.id id )
T Æ id. S7
id F E Æ (E+T).
S12 S10 S11
)
F Æ id. T Æ (T*F.) T Æ(T*F).

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador LR(0) - Análisis Analizador LR(0) - Análisis

Pila Decisión Entrada


Entrada Ir_a
Estado Acción Regla ( ) * + id E T F
Reconocer: $0 Desplazar (6+(4*2))$
$0(2 Desplazar 6+(4*2))$
0 Desplazamiento 2 13 1 (6+(4*2)) $0(2613
$ ( Reducir EÆid +(4*2))$
( ))$
1 Reducción E’ÆE
$0(2E Ir_a 3 +(4*2))$
2 Desplazamiento 2 13 3

3 Desplazamiento 4 $0(2E3 Desplazar +(4*2))$


4 Desplazamiento 6 14 5 $0(2E3+4 Desplazar (4*2))$
5 Desplazamiento 7
$0(2E3+4(6 Desplazar 4*2))$
6 Desplazamiento 6 14 8
$0(2E3+4(6414 Reducir TÆid *2))$
7 Reducción EÆ(E+T)
$0(2E3+4(6T Ir_a 8 *2))$
8 Desplazamiento
esp a a e to 9

9 Desplazamiento 12 10 $0(2E3+4(6T8 Desplazar *2))$


10 Desplazamiento 11 $0(2E3+4(6T8*9 Desplazar ))$
11 Reducción TÆ (T*F)
$0(2E3+4(6T8*9212 Reducir FÆid ))$
12 Reducción F Æ id
$0(2E3+4(6T8*9F Ir_a 10 ))$
13 Reducción E Æ id
$0(2E3+4(6T8*9F10 Desplazar ))$
14 Reducción T Æ id
$0(2E3+4(6T8*9F10)11 Reducir TÆ(T*F) )$

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez

Analizador LR(0) - Análisis Analizador LR(0) - Análisis

1 A partir
1. ti d
de la
l siguiente
i i t gramática,
áti construir
t i ell autómata
tó t finito
fi it
Reconocer: determinista y la tabla de análisis para el analizador LR(0).
(6+(4*2))
SÆ (S)S|ε
Pila Decisión Entrada
... ... ...
$0(2E3+4T Ir_a 5 )$
Desplazar
$0(2E3+4T5 )$
2. Reconocer la cadena “(())()”.
$0(2E3+4T5)7 Reducir EÆ(E+T)
( ) $
$0E Ir_a 1 $
$0E1 Reducir E’ÆE $
$0E' EXITO $

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador LR(0) - Análisis Analizador LR(0) - Análisis

Conflictos:

S0: Desplazamiento-reducción
S2: Desplazamiento-reducción
S4: Desplazamiento
Desplazamiento-reducción
reducción E t d
Entrada I a
Ir

Acción Regla ( )

0 Desplazar / Reducir SÆЄ 2 1

1 Reducir S’ÆS

2 Desplazar / Reducir SÆ Є 2 3

3 Desplazar - 4

4 Desplazar / Reducir SÆ Є 2 5

5 Reducir SÆ(S)S

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez

Analizador LR(0) - Análisis Analizador SLR(1) - Análisis

1 A partir
1. ti d
de la
l siguiente
i i t gramática,
áti construir
t i ell autómata
tó t finito
fi it a)) Ampliar
A li lla gramática:
áti
determinista y la tabla de análisis para el analizador SLR(1).
E’Æ E
EÆ (E + T) | id
E Æ (E + T) | id TÆ (T * F) | id
T Æ (T * F) | id FÆ id
F Æ id

(6+(4 2)) .
2 Reconocer la cadena “(6+(4*2))”
2. b) Conjuntos Siguiente:

Sig (E’) = { $ }
Sig (E) = { + , $ }
Sig (T) = { * , ) }
Sig (F) = { ) }

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador SLR(1) - Análisis Analizador SLR(1) - Análisis
S1
c)) Autómata:
A tó t E’ Æ E. d) Tabla
T bl análisis:
áli i
E
S0 S2 S3 Ir_a
(
E’Æ.E E Æ (.E+T) Estado $ ( ) * + id E T F
( E Æ .(E+T) E Æ (E.+T)
E Æ.(E+T) E 0 D: 2 D: 13 1
EÆ .id E Æ .id
1 Aceptar
id id
S13 + 2 D: 2 D: 13 3

E Æ id. 3 D: 4
S4
4 D: 6 D: 14 5
S8 E Æ (E+.T)
5 D: 7
T Æ .(T*F)
T Æ (T.*F) T ( T Æ .id 6 D: 6 D: 14 8
S6
T 7 R: EÆ(E+T) R:EÆ(E+T)
* T Æ (.T*F)
S5
id 8 D: 9
S9 T Æ .(T*F) ( E Æ (E+T.)
T Æ .id 9 D: 12 10
T Æ (T*.F) S14
FÆ.id ) 10 D: 11
id T Æ id.
id S7 11 R:TÆ (T*F) R:TÆ (T*F)
id F E Æ (E+T).
S11 12 R: F Æ id
S12 S10
) 13 R: E Æ id R: EÆ id
F Æ id. T Æ (T*F.) T Æ(T*F).
14 R: T Æ id R: T Æ id

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez

Analizador SLR(1) - Análisis Analizador SLR(1) - Análisis

Pila Decisión Entrada


e) Reconocer D:2
$0 (6+(4*2))$
e) Reconocer (6+(4*2)):
(6+(4*2)) $0(2 D:13 6+(4*2))$
$0(2613
$ ( R: EÆid +(4*2))$
( ))$
$0(2E Ir_a 3 +(4*2))$
$0(2E3 D:4 +(4*2))$ Pila Decisión Entrada
$0(2E3+4 D:6 (4*2))$ ... ... ...
$0(2E3+4(6 D:14 4*2))$ $0(2E3+4T Ir_a 5 )$
$0(2E3+4(6414 R: TÆid *2))$ $0(2E3+4T5 D:7 )$
$0(2E3+4(6T Ir_a 8 *2))$ $0(2E3+4T5)7 R: EÆ(E+T)
( ) $
$0(2E3+4(6T8 D:9 *2))$ $0E Ir_a 1 $
$0(2E3+4(6T8*9 D:12 ))$ $0E1 Aceptar $
$0(2E3+4(6T8*9212 R: FÆid ))$ EXITO
$0(2E3+4(6T8*9F Ir_a 10 ))$
$0(2E3+4(6T8*9F10 D:11 ))$
$0(2E3+4(6T8*9F10)11 R: TÆ(T*F) )$

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador SLR(1) - Análisis Análisis sintáctico SLR(1)

1 A partir
1. ti d
de la
l siguiente
i i t gramática,
áti construir
t i ell autómata
tó t finito
fi it A tó t
Autómata:
determinista y la tabla de análisis para el analizador SLR(1).

S Æ (S) S | ε

) .
2 Reconocer la cadena “(( ( ) )( )”
2.

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez

Análisis sintáctico SLR(1) Analizador SLR(1) - Análisis

Pila Decisión Entrada


• Tabla:
T bl • Reconocer $0 D:2 (())()$
Siguiente(S’) = { $ } (())() $0(2 D:2 ())()$
g ( )={),$}
Siguiente(S) $0(2(2
$ ( ( R: SÆЄ ))()$
$0(2(2S Ir_a 3 ))()$

Ir a $0(2(2S3 D: 4 ))()$
$0(2(2S3)4 R: SÆЄ )()$
( ) $ S
$0(2(2S3)4S Ir_a 5 )()$
0 D-2 R: SÆЄ R: SÆЄ 1 $0(2(2S3)4S5 R: SÆ(S)S )()$
1 Aceptar $0(2S Ir_a 3 )()$

2 D-2 R: SÆЄ R: SÆЄ 3 $0(2S3 D: 4 )()$


$0(2S3)4 D:2 ()$
3 D-4
$0(2S3)4(2 R: SÆЄ )$
4 D-2 R: SÆЄ R: SÆЄ 5
$0(2S3)4(2S Ir_a 3 )$
5 R: SÆ(S)S R: SÆ(S)S $0(2S3)4(2S3 D: 4 )$
$0(2S3)4(2S3)4 R: SÆЄ $

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador SLR(1) - Análisis Análisis SLR(1)

E -> E OR E
e) Reconocer (())()
| E AND E
Pila Decisión Entrada | (E)
... ... ...
|0
$0(2S3)4(2S3)4
$ ( ) ( ) R: SÆЄ $
$0(2S3)4(2S3)4S Ir_a 5 $ |1
$0(2S3)4(2S3)4S5 R: SÆ(S)S $
$0(2S3)4S Ir_a
_ 5 $
$0(2S3)4S5 R: SÆ(S)S $
$0 R: SÆЄ $
$0S Ir_a 1 $
$0S1 Aceptar $
EXITO

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez

Cont. Solución Analizador LALR(1)

Estado OR AND ( ) 0 1 # E S ÆS
S’ÆS
0 s6 s9 s10 1 SÆL=R | R
LÆ*R | id
1 s2 s3 r1 aceptar
RÆL
2 s6 s9 s10 4

3 s6 s9 s10 5

4 s2/r2 s3/r2 r2 r2

5 s2/r3 s3/r3 r3 r3

6 s6 s9 s10 7 Hay un conflicto de Reducción


por Desplazamiento en S2:
7 s2 s3 s8

8 r4 r4 r4 r4 - La gramática no es SLR

9 r5 r5 r5 r5

10 r6 r6 r6 r6

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador LALR(1) - Autómata I Analizador LALR(1) - Autómata II

S ÆS
S’ÆS S ÆS
S’ÆS
SÆL=R | R SÆL=R | R
LÆ*R | id LÆ*R | id
RÆL RÆL

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez

Analizador LALR(1) - Tabla de análisis Analizador LALR(1) - Análisis

R0: S’Æ
SÆS
R1: SÆ L=R
R2: SÆ R
R3: LÆ *R
R
R4: LÆ id
R5: RÆ L

Procesadores de lenguaje – Ejercicios Análisis Sintáctico Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sánchez, Daniel Rodríguez Salvador Sánchez, Daniel Rodríguez
Analizador LALR(1) - Análisis

Procesadores de lenguaje – Ejercicios Análisis Sintáctico


Salvador Sánchez, Daniel Rodríguez

Procesadores de lenguaje
Ejercicios de análisis sintáctico
Ejercicios de análisis sintáctico
Salvador Sánchez Daniel Rodrígue
Analizador LL(1) – Conjunto primero
Analizador LL(1) 
Conjunto primero
1 C l
l
l
j
t
P i
d A
l
áti
1.Calcular el conjunto Pri
Analizador LL(1) - Análisis
Analizador LL(1) 
Análisis
1.
Comprobar si la siguiente gramática es LL(1) y construir la 
tabla,
Analizador LL(1) - Análisis
Analizador LL(1) 
Análisis
1
C
b
i l
i
i
t
áti
LL(1)
t
i l
1.
Comprobar si la siguiente gramática
Analizador LL(1) - Análisis
Analizador LL(1) 
Análisis
P i
(B)
{ id
}
S ( )
{ $ }
Prim(B) = { id, a, ε } 
Prim(D) = { id, є }
Analizador LR(0) - Análisis
Analizador LR(0) 
Análisis
1
13
2
Desplazamiento
0
F
T
E
id
+
*
)
(
Regla
Acción
Estado
Ir_a
Entr
Analizador LR(0) - Análisis
Analizador LR(0) 
Análisis
Procesadores de lenguaje – Ejercicios Análisis Sintáctico
Salvador Sán
Analizador SLR(1) - Análisis
Analizador SLR(1) 
Análisis
S1
) A tó
t
E
(
E’Æ.E
S0
E’ Æ E.
E Æ (.E+T)
S2
(
S3
c) Autómata:
(
i
Analizador SLR(1) - Análisis
Analizador SLR(1) 
Análisis
1
A
ti d
l
i
i
t
áti
t
i
l
tó
t
fi it
1.
A partir de la siguiente gr
Analizador SLR(1) - Análisis
Analizador SLR(1) 
Análisis
e) Reconocer (())()
Pila
Decisión
Entrada
...
...
...
$0(2S3)4(2S3)4

También podría gustarte