Este documento presenta una introducción al análisis léxico y los diagramas de transición como parte de un curso sobre compiladores e intérpretes. Explica las fases de un compilador, define términos clave como token, lexema y atributos, y describe los pasos del análisis léxico como identificar tokens, estructurarlos y describir el lenguaje con expresiones regulares. También incluye un ejemplo de cómo un analizador léxico separa una sentencia en tokens y asigna atributos.
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
AL DT Análisis Léxico
1. ANALISIS
LEXICO
y Diagramas de Transición
UNIVERSIDAD “GERARDO BARRIOS”
FACULTAD DE CIENCIA Y TECNOLOGÍA
COMPILADORES E INTÉRPRETES. CICLO I – 2016
Análisis Lexico y DT 1
2. Análisis Lexico y DT 2
Objetivos
Conocer el funcionamiento del analizador léxico
Comprender su relación con la tabla de símbolos.
Entender como interviene la generación de errores a
partir de ésta etapa.
Aprender a especificar un analizador léxico.
Realizar diagramas y tablas de transicion.
3. Análisis Lexico y DT 3
Fases de un
compilador
Compilación
Análisis Síntesis
Léxico
“Tokens”
Sintáctico
“Intrucciones”
Semántico
“significado”
Generación de
Código
4. Análisis Lexico y DT 4
Análisis Léxico
Está constituido por todas las palabras y
símbolos que lo componen. Para un lenguaje de
programación la definición también es válida.
Lo constituyen todos los elementos
individuales del lenguaje, denominados
frecuentemente en inglés tokens
5. Análisis Lexico y DT 5
Términos
Token
Así son tokens: las palabras reservadas del
lenguaje, los símbolos que denotan los distintos
tipos de operadores, identificadores (de
variables, de funciones, de procedimientos, de
tipos, etc.), separadores de sentencias y otros.
6. Análisis Lexico y DT 6
Términos
Token
◦ Elemento léxico del lenguaje
◦ Símbolo No Terminal de las fases siguientes
Patrón
◦ Expresión regular que define el lenguaje
◦ Letra (Letra | Digito)*
7. Análisis Lexico y DT 7
Términos
Lexema
◦ Secuencia de caracteres que concuerda con un patrón
◦ Numero, caracter.
Atributos
◦ Estructura de datos de cada token para almacenarse en la
TS
◦ Depende del tipo de token
◦ [ID, Lexema, Tipo, Valor, línea]
8. Análisis Lexico y DT 8
ANALISIS
LEXICO
Un programa fuente es una serie de símbolos
que representan las construcciones del lenguaje
tales como variables, etiquetas, palabras
reservadas, constantes, operadores, entre otros.
El programa fuente se trata inicialmente con el
analizador léxico
9. Análisis Lexico y DT 9
Pasos del AL
Identificar la colección de tokens
Estructurar la colección de tokens
Describir el lenguaje como expresiones regulares
10. Análisis Lexico y DT 10
EJEMPLO
Así, para la siguiente sentencia de Pascal:
IF cuenta = sueldo THEN jefe:= justo;
El analizador léxico la separa en la siguiente
secuencia de tokens:
11. Análisis Lexico y DT 11
EJEMPLO
Y les asigna su atributo, habitualmente por medio
de un código numérico cuyo significado se ha
definido previamente.
12. Análisis Lexico y DT 12
LEXICO
El análisis léxico es un análisis a
nivel de caracteres, su misión es
reconocer los componentes
léxicos o tokens, enviando al
analizador sintáctico
13. Análisis Lexico y DT 13
Ejemplo
Analizador léxico que reconozca los siguientes
elementos:
Números enteros
Operadores aritméticos suma, resta, producto,
división, incremento y decremento (+, - *, /, ++,--)
Identificadores
WHILE
14. Análisis Lexico y DT 14
Especificación AL
Especificación formal
Gramáticas Lineales
Recursivas a izquierdas
Recursivas a derechas
expresiones regulares
Autómatas Finitos (Diagramas de Transición)
15. Análisis Lexico y DT 15
Funciones del AL
Tratar con la tabla de símbolos
Generar tokens bajo demanda del analizador
sintáctico
Manejar el fichero fuente
Ignorar comentarios
Contabilizar posición de tokens
Preprocesar macros, constantes, includes…
16. Análisis Lexico y DT 16
ANALISIS LEXICO
Jueves 07 de abril de 2016
Grupos de 3 o 4 integrantes