Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Automatas Finitos PDF
Automatas Finitos PDF
Guía 2 1
Facultad: Ingeniería
Escuela: Computación
Asignatura: Compiladores
Contenido
En esta guía se aborda la aplicación de los autómatas en el
campo de los procesadores de lenguaje, haciendo énfasis en
los Autómatas de Estado Finito.
Objetivos Específicos
Material y Equipo
Guía No 2.
Computadora con Dev-C++ y el simulador Jflap.
Introducción Teórica
Autómatas finitos
K es conjuntos de estados.
Σ es el alfabeto de entrada.
δ : K X Σ → K, es la función de transición, que a partir
de un estado y un símbolo del alfabeto obtiene un nuevo
estado.
s ∈ K es el estado inicial.
F ⊆ K es un conjunto de estados finales.
δ : K X Σ → K, es la función de transición, que a partir
de un estado y un símbolo del alfabeto obtiene un nuevo
estado.
Ejemplo:
Procedimiento
Digite la cadena:
8 Compiladores. Guía 2
abc
abC
aba_a
_abc
abcd
PARTE II. (Simulación de un autómata de estado finito en C++)
int main(){
char cadena[80];
cout<<"Ingrese la cadena a analizar: ";
cin.getline(cadena,80);
if(!simular_af(cadena))
cout<<"Error: Identificador no valido"<<endl;
else
cout<<"La cadena '"<<cadena<<"' es un identificador valido"<<endl;
system("pause");
return 0;
}
abc
abC
aba_a
_abc
abcd
Compiladores. Guía 2 11
Análisis de resultados
Ejercicio 1
Se desea construir una gramática que describe el lenguaje
formado por los identificadores de MICRO C. (Puede consultar
la guía anterior)
Se pide
a) Simulación del autómata de estado correspondiente en
JFlap
b) Simular el autómata en un pequeño programa en C/C++.
Investigación complementaria
Parte A - Ejercicio 2
Crear un autómata finito para validar el tipo de dato float
de un lenguaje de programación, considerando los siguientes
aspectos:
El alfabeto de entrada de este autómata deberá estar
formado por los números dígitos (0-9), el signo menos (-)
y el punto (.)
Las cantidades pueden ser positivas o negativas.
Las cantidades pueden ser o no ser enteras.
Se pide:
Parte B
Investigar con el tutorial de Jflap como implementar
Autómatas de Pila.
Investigar que es un analizador sintáctico.
12 Compiladores. Guía 2
Alumno:
GL:
GL:
Máquina No:
Docente: Fecha:
a
Docente: GL:
EVALUACION
ACTITUD
Del 15% No tiene Actitud Tiene
al 30% actitud propositiva y actitud
proactiva. con proactiva y
propuestas no sus
aplicables al propuestas
contenido de son
la guía. concretas.
TOTAL 100%