reporte de automatas
TRANSCRIPT
-
7/24/2019 Reporte de Automatas
1/14
Escuela Superior de Cmputo
Autmatas delanalizador lxico CCompiladores
Cruz Cruz Jorge
Feregrino Bolaos Antonio
Gonzales Rodrguez Florencio Javier
6-3-2013
-
7/24/2019 Reporte de Automatas
2/14
Compiladores Analizador lxico
Introduccin
Dada la complejidad de realizar un analizador lxico, se tiene que dividir en varias partes, cada una
controlada por un autmata. Los que empleamos para llevar a cabo el nuestro fueron los
siguientes. Los ordenamos segn la precedencia (mayor a menor)
ConsideracionesDado el tamao de algunos autmatas, se ha simplificado la notacin en algunos casos medianteel uso de agrupaciones.
-
7/24/2019 Reporte de Automatas
3/14
Compiladores Analizador lxico
Autmata que reconoce identificadores malformados
Este autmata se encarga de encontrar errores en los identificadores, reconocer cadenas del
tipo:
4fx
444tw_ 8yx
Expresin regular
[0-9]+[a-zA-Z0-9_]+
Representacin grfica
-
7/24/2019 Reporte de Automatas
4/14
Compiladores Analizador lxico
Autmata que reconoce nmeros flotantes
Encargado de interceptar las expresiones de tipo
0.11111
90.32
100.0001
Expresin regular
[0-9]+. [0-9]+
Representacin grfica
-
7/24/2019 Reporte de Automatas
5/14
Compiladores Analizador lxico
Autmata que reconoce nmeros enteros
Importante para el analizador, se encarga de validar las expresiones:
24212
990231
1
Expresin regular
[0-9]+
Representacin grfica
-
7/24/2019 Reporte de Automatas
6/14
Compiladores Analizador lxico
Autmata que reconoce palabras reservadas
Realiza el trabajo de reconocer algunas palabras reservadas de C, estas son fijas.
Expresin regular
(main)|(goto)|(return)|(signed)|(sizeof)|(typedef)|(union)|(unsigned)
Representacin grfica
-
7/24/2019 Reporte de Automatas
7/14
Compiladores Analizador lxico
Autmata que reconoce estructuras repetitivas
Al ser estas palabras reservadas la expresin regular para validarlas es un poco esttica
Expresin regular
(for)|(break)|(continue)|(do)|(while)
Representacin grfica
-
7/24/2019 Reporte de Automatas
8/14
Compiladores Analizador lxico
Autmata que reconoce estructuras selectivas
Estticas, similares a las estructuras repetitivas
Expresin regular
(switch)|(case)|(else)|(if)|(default)
Representacin grfica
-
7/24/2019 Reporte de Automatas
9/14
Compiladores Analizador lxico
Autmata que reconoce tipos de dato
Expresin regular
(char)|(int)|(long)|(short)|(float)|(double)|(void)
Representacin grfica
-
7/24/2019 Reporte de Automatas
10/14
Compiladores Analizador lxico
Autmata que reconoce los identificadores
Expresin regular
[a-zA-Z_]+[a-zA-Z0-9_]*
Representacin grfica
-
7/24/2019 Reporte de Automatas
11/14
Compiladores Analizador lxico
Autmata que reconoce especificadores de formato
Expresin regular
%(d|i|u|o|x|X|f|F|e|E|g|G|a|A|c|s|p|n|%)
Representacin grfica
-
7/24/2019 Reporte de Automatas
12/14
Compiladores Analizador lxico
Autmata que reconoce operadores de incremento/decremento
Expresin regular
(++)|(--)|(+|-|*|/|%)=
Representacin grfica
Autmata que reconoce operadores aritmticos
Expresin regular
+|-|*|/|%
Representacin grfica
-
7/24/2019 Reporte de Automatas
13/14
Compiladores Analizador lxico
Autmata que reconoce operadores relacionales
Expresin regular
|(>=)|(
-
7/24/2019 Reporte de Automatas
14/14
Compiladores Analizador lxico
Autmata que reconoce los operadores lgicos
Expresin regular
!|(&&)|(||)
Representacin grfica
Autmata que reconoce caracteres especiales
Expresin regular
{|}|[|]|(|)|;|,|.
Representacin grfica