Gua 3
1
Facultad:
Ingeniera
Escuela:
Computacin
Asignatura: Compiladores
Objetivos Especficos
Conocer las caractersticas bsicas de un Autmata de Pila.
Crear algunas secuencias de cadenas evaluadas por un Autmata
de Pila en JFlap, e implementarlos en C++.
Material y Equipo
Gua No 3.
Computadora con DevC++ y
el simulador Jflap.
Introduccin Terica
Gua 3 de Pila
Autmata
De
igual
Gua
4 manera que los lenguajes regulares se pueden representar
mediante autmatas finitos, los lenguajes libres de contexto
tienen su correspondencia en otro tipo de dispositivo: El
fa
Autmata
con Pila (AP).
Un AP es una mquina de estado que usa una estructura de datos
temporal llamada PILA, en la cual el ltimo elemento que entra es
el primero que sale de la pila (LIFO). Al iniciar el
funcionamiento, la pila est vaca y al finalizar la pila debe
quedar vaca.
2Compiladores. Gua 3
se hara la
es conocida
hara con la
es conocida
del contexto a
entrada marcando
pila el smbolo
siguientes segn
Compiladores. Gua 3
Procedimiento
PARTE I: SIMULACION EN JFLAP
Gua 3
Ejemplo
Para
Guala4 gramtica
(Independiente de contexto).
Con las siguientes producciones:
fa
Transiciones
(p, , ) (q,
(q, , S) (q,
(q, , S) (q,
(q, a, a) (q,
(q, b, b) (q,
S)
aSb)
)
)
)
4Compiladores. Gua 3
por
el
autmata,
por
el
autmata,
aaabbb
aaaba
abc
aab
Marque con una X las cadenas aceptadas
utilizando el modo aceptado por pila vaca
aaabbb
aaaba
abc
aab
Anlisis de resultados
Qu diferencia se da en JFLAP entre aceptar una palabra por
estado final y al aceptarlo por la pila vaca? __________________
_________________________________________________________________
_________________________________________________________________
_________________________________________________________________
Segn la teora de autmatas de pila, cul debera ser la
condicin de aceptacin de una palabra?__________________________
_________________________________________________________________
Compiladores. Gua 3
o extraer(S);
la entrada;
la entrada;
else error
6Compiladores. Gua 3
Investigacin complementaria
Implementar en C++ el pseudocdigo que simule el autmata de
pila visto en la prctica.
Investigue la definicin formal de una maquina de Turing y en
que se puede aplicar en el campo de los compiladores.
Bibliografa
http://www.frt.utn.edu.ar/sistemas/sintaxis/page31.html
http://www.uhu.es/francisco.moreno/talf/docs/tema7.pdf
Compiladores. Gua 3
Hoja de cotejo:
Docente:
Tema: Presentacin del programa
3
1
Mquina No:
Mquina No:
Alumno:
Mquina No:
GL:
Alumno:
Docente:
GL:
Docente:
GL:
Fecha:
EVALUACION
%
CONOCIMIENTO
Del 20
al 30%
APLICACIN
DEL
CONOCIMIENTO
Del 40%
al 60%
1-4
5-7
8-10
Conocimiento
deficiente
de los
fundamentos
tericos
Conocimiento
y explicacin
incompleta de
los
fundamentos
tericos
Conocimiento
completo y
explicacin
clara de los
fundamentos
tericos
No tiene
actitud
proactiva.
Actitud
propositiva y
con
propuestas no
aplicables al
contenido de
la gua.
Tiene
actitud
proactiva y
sus
propuestas
son
concretas.
ACTITUD
Del 15%
al 30%
TOTAL
100%
Nota