Reporte Analizador Léxico Nayeli Macías Corral y Carlos E. Navarro Palos
Taller de Compiladores Sección: D02 Macías Corral Nayeli Código: 206553311 Navarro Palos Carlos E. Código: 206553176 Universidad de Guadalajara Centro Universitario de Ciencias Exactas e Ingenierías
Reporte Analizador Léxico Introducción El analizador Léxico es aquel que identifica caracteres por separado, el objetivo principal del analizador léxico es leer el flujo de caracteres de entrada transformarlo en una secuencia de componentes léxicos que utilizara el analizador sintáctico. Al tiempo de que realiza esta función, el analizador léxico se ocupa de ciertas labores de limpieza, entre ellas esta eliminar los blancos o los comentarios; también de se ocupa de los problemas que pueden surgir por los distintos juegos de caracteres o si el lenguaje no distingue mayúsculas y minúsculas.
Objetivo General En esta práctica se pretende construir un analizador léxico, el cual identifica cada símbolo de la cadena de caracteres que se pretenda leer desde un archivo ya hecho, informando al usuario si es una palabra reservada, si pertenece al rubro de operadores aritméticos, lógicos, relacionales, etc. Y cuales símbolos no son validos o no reconocidos.
Objetivo Particular Para poder lograr esto, se hace mediante el uso de expresiones regulares 1 establecidas que ayudan a la comparación de cadenas, logrando con esto la separación e identificación de caracteres validos y no validos. Todo modularizado2 para el mejor entendimiento del código. El programa pide al usuario que introduzca un archivo de texto ya con el texto a analizar y posteriormente el programa comienza a comparar las cadenas con las expresiones y las separa en dos ventanas para su fácil lectura. Este analizador está programado en lenguaje Java.
Taller de Compiladores
3
Reporte Analizador Léxico
Pantallazos Esta es la pantalla principal del analizador léxico, con el avance en las prácticas irá cambiando de manera gradual para ajustarse a los cambios necesarios para el compilador completo
Primero se debe abrir el buscador de archivos dando clic en el botón Buscar para cargar el texto de prueba “
”
4
Taller de Compiladores
4
Reporte Analizador Léxico Una vez cargado el archivo en el analizador, se puede apreciar que se muestra el contenido del archivo de texto en la ventana de código fuente donde ya aparece cada línea numerada para hacer el paso siguiente más sencillo de analizar “
”
Al dar clic en Analizar comienza el proceso de separación y reconocimiento de líneas correctas y erróneas, las mismas aparecen en su respectiva ventana de Tokens3 Inválidos y Tokens Validos done también se muestra el tipo al que pertenecen. “
”
“
”
“
”
5
Taller de Compiladores
5
Reporte Analizador Léxico
Conclusiones El analizador léxico es el primer paso hacia el compilador, es uno de los más sencillos pero fundamentales, ya que se encarga del análisis caracter por caracter para determinar si este pertenece a algún tipo establecido delimitado en este caso por las expresiones regulares. Al ser este analizador programado en lenguaje Java, provee una gama de posibles alternativas para la comparación de cadenas así como la identificación de las mismas, etc. También ofrece al usuario una interfaz grafica amigable y fácil de usar.
Apéndice 1
Expresiones Regulares:
Una expresión regular, a menudo llamada también patrón, es una expresión que describe un conjunto de cadenas sin enumerar sus elementos. 2
Modularizado:
En programación, se refiere a la forma de separar código en módulos o funciones concretas con el objeto de hacer más legible y eficiente el programa. 3
Tokens:
Un token o también llamado componente léxico es una cadena de caracteres que tiene un significado coherente en cierto lenguaje de programación.
Glosario de términos + Campo: Es el espacio en la memoria que sirve para almacenar temporalmente un dato durante el proceso, Su contenido varia durante la ejecución del programa. + Caracteres : Son los símbolos o gráficos que se utilizan para componer los diferentes alfabetos y que no son necesarios para desarrollar lenguajes. + Interfaz : Estudia la estructura de la oración y el modo en que se enlazan las palabras para formar oraciones con sentido. + Léxico: Conjunto de palabras que conforman un lenguaje. + Usuario: Cualquier individuo que interactúa con la computadora a nivel de aplicación. Los programadores, operadores y otro personal técnico no son considerados usuarios cuando trabajan con la computadora a nivel profesional. + Sintáctico: Estudia la estructura de la oración y el modo en que se enlazan las palabras para formar oraciones con sentido.
Thank you for interesting in our services. We are a non-profit group that run this website to share documents. We need your help to maintenance this website.