Jurez
Prctica de la Unidad 6:
Anlisis sintctico
Integrantes:
Aranda Rangel Sergio Sal
vila Hurtado Diana Ivonne
Carrillo Soto Estefana
Chagoyn Olmos Mara Yesenia
Titular:
Castaeda Mnarrez Rosa Del Carmen
Cd. Jurez Chihuahua a 29 de Noviembre del 2013
Contenido
Introduccin....................................................................3
Material Utilizado.............................................................3
Teora............................................................................... 4
Conclusin.....................................................................10
Fuentes Consultadas.....................................................10
Introduccin
En la presente prctica acerca del tema analizador sintctico se
desarrollaron diferentes ejercicios de los temas que abarca la unidad
6 de la materia Lenguajes y Autmatas 1 estos temas son: arboles de
derivacin, diagramas de sintaxis, anlisis sintctico predictivo, GLC
as como los conceptos bsicos que se manejan en la materia como
terminales, no terminales de una gramtica especfica entre otros.
Un anlisis sintctico establece las funciones sintcticas y las
relaciones de jerarqua y concordancia que se encuentran en el
interior de cualquier oracin.
Material Utilizado
PC
Lenguaje de programacin
Diversos libros de consulta
Teora
Considere la siguiente gramtica:
P:
S ( L ) | a
L L, S| S
Realice los ejercicios que siguen a continuacin:
1. Cules son terminales y cuales no terminales?
No terminales: S L
Terminales: ( ) , a
2. Realiza un rbol sintctico (o de derivacin) para cada una de las siguientes
expresiones:
(a,a)
(a,(a,a))
(a,((a,a),(a,a)))
delim
delim
100
200
L L, S| S
Inicio
L
1
delim
100
3
delim
S
5
200
(
S( L )
LSL
a
S a
LSL
L,SL
(a,a)
Pila
$S
$)L(
$)L
$)LS
$)La
$)L
$)LS,
$)LS
$)La
$)L
$)
$
Entrada
(a,a)$
(a,a)$
a,a)$
a,a)$
a,a)$
,a)$
,a)$
a)$
a)$
)$
)$
$
Salida
S( L )
LSL
S a
L,SL
S a
L
(a,(a,a))
Pila
$S
$)L(
$)L
$)LS
$)La
$)L
$)LS,
$)LS
$)L)L(
$)L)L
$)L)LS
$)L)La
$)L)L
$)L)LS,
$)L)LS
$)L)La
$)L)L
$)L)
$)L
$)
$
Entrada
(a,(a,a))$
(a,(a,a))$
a,(a,a))$
a,(a,a))$
a,(a,a))$
,(a,a))$
,(a,a))$
(a,a))$
(a,a))$
a,a))$
a,a))$
a,a))$
,a))$
,a))$
a))$
a))$
))$
))$
)$
)$
$
Salida
S( L )
LSL
S a
L,SL
S( L )
LSL
S a
L,SL
S a
L
L
(a,((a,a),(a,a)))
Pila
$S
$)L(
$)L
$)LS
$)La
$)L
$)LS,
$)LS
$)L)L(
$)L)L
$)L)LS
$)L)L)L(
$)L)L)L
$)L)L)LS
$)L)L)La
$)L)L)L
$)L)L)LS,
$)L)L)LS
$)L)L)La
$)L)L)L
$)L)L)
$)L)L
$)L)LS,
$)L)LS
$)L)L)L(
$)L)L)L
$)L)L)LS
$)L)L)La
$)L)L)L
$)L)L)LS,
$)L)L)LS
$)L)L)La
$)L)L)L
$)L)L)
$)L)L
$)L)
$)L
$)
$
Entrada
(a,((a,a),(a,a)))$
(a,((a,a),(a,a)))$
a,((a,a),(a,a)))$
a,((a,a),(a,a)))$
a,((a,a),(a,a)))$
,((a,a),(a,a)))$
,((a,a),(a,a)))$
((a,a),(a,a)))$
((a,a),(a,a)))$
(a,a),(a,a)))$
(a,a),(a,a)))$
(a,a),(a,a)))$
a,a),(a,a)))$
a,a),(a,a)))$
a,a),(a,a)))$
,a),(a,a)))$
,a),(a,a)))$
a),(a,a)))$
a),(a,a)))$
),(a,a)))$
),(a,a)))$
,(a,a)))$
,(a,a)))$
(a,a)))$
(a,a)))$
a,a)))$
a,a)))$
a,a)))$
,a)))$
,a)))$
a)))$
a)))$
)))$
)))$
))$
))$
)$
)$
$
Salida
S( L )
LSL
S a
L,SL
S( L )
LSL
S( L )
LSL
S a
L,SL
S a
L
L,SL
S( L )
LSL
S a
L,SL
S a
L
L
L
Conclusin
La sintaxis de un lenguaje de programacin se lo determina
mediante reglas gramaticales de una gramtica libre de contexto
similar a las ER en el anlisis lxico con la diferencia de que son
recursivos.
Las gramticas ofrecen ventajas significativas a los diseadores
de lenguajes y a los desarrolladores de compiladores. Algunas son:
Las gramticas son especificaciones sintcticas y
precisas de lenguajes de programacin.
A partir de una gramtica se puede generar
automticamente un analizador sintctico.
El proceso de construccin puede llevar a descubrir
ambigedades.
El anlisis sintctico es importante, ya que de un correcto
anlisis depende a menudo la interpretacin y comprensin de
los textos.
Fuentes Consultadas
Kenneth C. Louden, Construccin de Compiladores Principios Y
Prctica
Traductores, Compiladores e Intrpretes, Tema 3 Anlisis
Sintctico, http://www.lcc.uma.es/~galvez/ftp/tci/tictema3.pdf, (2611-13)
Elena Jurado Mlaga, Teora de autmatas y Lenguajes
Formales,2008
10