Analizador lexico y manejo de buffers

Solo disponible en BuenasTareas
  • Páginas : 3 (685 palabras )
  • Descarga(s) : 0
  • Publicado : 22 de noviembre de 2010
Leer documento completo
Vista previa del texto
3.2 Analizador léxico
Un analizador léxico o analizador lexicográfico (en inglés scanner) es un programa que recibe como entrada el código fuente de otro programa (secuencia de caracteres) y produceuna salida compuesta de tokens (componentes léxicos) o símbolos. Estos tokens sirven para una posterior etapa del proceso de traducción, siendo la entrada para el analizador sintáctico (eninglés parser).

Lee caracteres de entrada para formar componentes e identificarlos o clasificarlos y pasar la información de los componentes al analizador sintáctico.
Realiza además funciones como eliminarespacios en blanco, saltos de línea, tabuladores, ignorar comentarios, detección y recuperación de errores. Los errores que un analizador léxico reconoce son símbolos no válidos o no reconocidos por ellexico del lenguaje o que no forman parte de ningún componente léxico.
Existen diversos métodos para construir una analizador léxico, un método es usar un AFD para describir el patrón de cadacomponente. Para este método se parte de una tabla descriptiva de los componentes léxicos que reconocerá el analizador, en donde se clasifican los diversos tipos de componentes.
Para cada componente seconstruye un AFD que permita identificar el patrón de simbolos que deberá recibir y donde deberá terminar ese patrón que señale que ahi se encontró un componente. Todos los AFD´s se integran en un solodiagrama. Finalmente se determina la matriz de transición de estados, que no es más que tratranscripción del AFD integrado, en donde las columnas son los símbolos que acepta el analizador, incluyendouna columna para \b \t \n y otra columna para “otro” que representa a cualquier caracter o símbolo diferente de los señalados por el analizador. Lo que resta es crear un algoritmo de reconocimiento decadenas y añadir mediante una selección de casos para tomar la acción correspondiente según la cadena encontrada. hola

3.3 Manejo de localidades temporales de memoria (buffers)
La forma más...
tracking img