Analizador Lexico
El analizador léxico (también llamada scanner): agrupa los caracteres individuales en entidades lógicas.
Esta es la primera fase de un compilador y consiste en un programa querecibe el código fuente de otro programa (Secuencia de caracteres) y produce una salida de tokens (Componentes léxicos) o símbolos; esta salida sirve para dar paso a un nuevo proceso de traducción alanalizador sintáctico.
¿Cómo funciona?:
Lee la secuencia de caracteres del programa fuente, carácter a carácter, y los agrupa para formar unidades con significado propio.
Estos componentes léxicosrepresentan:
* Palabras reservadas
* Identificadores
* Operadores
* Símbolos especiales
* Constantes numéricas
* Constantes de caracteres
El analizador sintáctico, trabaja bajola petición del analizador sintáctico, quien es el que le va pidiendo que lea algún componente léxico, este lo hace.
Funciones secundarias:
* Manejo del fichero de entrada.
* Eliminarcomentarios, espacios en blanco, tabuladores, saltos de línea.
* Inclusión de ficheros
* La expansión de marcos y funciones.
* Contabilizar el número de líneas y columnas.
*Reconocimiento y ejecución de la directivas.
Ventajas de que el analizador léxico, este separado del analizador sintáctico.
* Facilidad de transportabilidad del traductor.
* Se simplifica el diseño.Componentes léxicos:
Patrón: es una regla que genera la secuencia de caracteres que puede representar a un determinado componente léxico.
Lexema: cadena de caracteres que concuerda con un patrón quedescribe un componente léxico.
Especiación de los componentes léxicos: expresiones regulares:
Los componentes léxicos se especifican haciendo uso de expresiones regulares. Además de las tresoperaciones básicas: concatenación, repetición (*) y alternativas (j) vamos a usar los siguientes meta símbolos:
* Una o más repeticiones +:
r+ indica una o más repeticiones de r
* Cualquier...
Regístrate para leer el documento completo.