AnáLisis LéXico
-
Upload
leopoldo-capa -
Category
Education
-
view
13.177 -
download
4
Transcript of AnáLisis LéXico
![Page 1: AnáLisis LéXico](https://reader035.fdocuments.es/reader035/viewer/2022073117/559a4b711a28ab175d8b4727/html5/thumbnails/1.jpg)
Análisis léxicoAnálisis léxico•El análisis léxico es el proceso de convertir un flujo de caracteres de entrada en un flujo de palabras o elementos.•Los elementos son grupos de caracteres con significancia.•El análisis léxico es la primera etapa de:•La indización automática•El proceso de peticiones.
Teoría de Autómatas y Compiladores
Leopoldo Capa
![Page 2: AnáLisis LéXico](https://reader035.fdocuments.es/reader035/viewer/2022073117/559a4b711a28ab175d8b4727/html5/thumbnails/2.jpg)
Análisis léxicoAnálisis léxico
Función principal: generar una lista ordenada de tokens, a partir de los caracteres de entrada.
Esos tokens son usados por el AS para construír el árbol sintáctico.
El AL es un módulo subordinado al correspondiente del AS.
![Page 3: AnáLisis LéXico](https://reader035.fdocuments.es/reader035/viewer/2022073117/559a4b711a28ab175d8b4727/html5/thumbnails/3.jpg)
Funciones adicionales del AL.◦ Funciones adicionales del AL◦ Eliminación de caracteres espúreos Asistencia en el informe de errores elaborado por el AS
◦ Cuenta de números de línea con comentarios, macros
◦ Manejo de algunos errores En PASCAL el lexema 0:5 pertenecería al lenguaje y :5 no.
Exceder el número de caracteres máximo para un identificador.
![Page 4: AnáLisis LéXico](https://reader035.fdocuments.es/reader035/viewer/2022073117/559a4b711a28ab175d8b4727/html5/thumbnails/4.jpg)
Componentes léxicos, lexemas yComponentes léxicos, lexemas ypatronespatrones LEXEMA PATRÓN
COMPONENTE LÉXICO Precio Secuencia de letras
Identificador 128 Secuencia de dígitos
Constante numérica
= Carácter “=” Asignación
![Page 5: AnáLisis LéXico](https://reader035.fdocuments.es/reader035/viewer/2022073117/559a4b711a28ab175d8b4727/html5/thumbnails/5.jpg)
Un patrón es una regla que describe el conjunto de lexemas que puede representar a un conjunto léxico
Los componentes léxicos se tratan como terminales de la gramática del lenguaje fuente
• La devolución de un componente léxico se hace a través de un número entero
![Page 6: AnáLisis LéXico](https://reader035.fdocuments.es/reader035/viewer/2022073117/559a4b711a28ab175d8b4727/html5/thumbnails/6.jpg)
Especificación de componentesEspecificación de componentesléxicosléxicos
• Expresiones regulares (patrón).• Cada patrón concuerda con una serie de cadenas.
• Las expresiones regulares dan el nombre al conjunto de cadenas con que concuerdan.
![Page 7: AnáLisis LéXico](https://reader035.fdocuments.es/reader035/viewer/2022073117/559a4b711a28ab175d8b4727/html5/thumbnails/7.jpg)
Expresiones regularesExpresiones regulares
• Se construyen a partir de otras expresiones
regulares más simples• Cada expresión regular r, representa unlenguaje L(r)• Letra a u b u c u … u z• Dígito 1 u 2 u 3 u … u 0• Identificador letra(letra u dígito)*
![Page 8: AnáLisis LéXico](https://reader035.fdocuments.es/reader035/viewer/2022073117/559a4b711a28ab175d8b4727/html5/thumbnails/8.jpg)
Definiciones regularesDefiniciones regulares
• Dan nombres a las expresiones regulares• Nos permiten referenciarlas
recursivamente• Digito 1|2|3|4|5|6|7|8|9|0• Entero dígito+• Decimal .dígito+ | .dígito+E(+|-| )
dígito+• Real entero (decimal | )
![Page 9: AnáLisis LéXico](https://reader035.fdocuments.es/reader035/viewer/2022073117/559a4b711a28ab175d8b4727/html5/thumbnails/9.jpg)
AbreviaturasAbreviaturas
• * cero o más casos• + uno o más casos• [a-zA-Z] mayúsculas y minúsculas• [0-9] dígitos• ? Cero o un caso• Digito [0-9]• Entero digito+• Decimal .digito+exponente?• Exponente (E|e) (+|-)?digito+• Real entero decimal?
![Page 10: AnáLisis LéXico](https://reader035.fdocuments.es/reader035/viewer/2022073117/559a4b711a28ab175d8b4727/html5/thumbnails/10.jpg)
• Digito [0-9]• Entero digito+• Decimal .digito+exponente?• Exponente (E|e) (+|-)?digito+• Real entero decimal?