Ruiz Catalán

Compiladores : teoría e implementación / - 1RA - MEXICO ALFAOMEGA 2010 - 448 ILUSTRACION 17 X 23 CM

Autores: Ruiz, Jacinto
ISBN: 978-607-7854-68-5
Área: Informática y computación
Subárea: Lenguajes y Programación
Materiales de apoyo:
Libre acceso
Comprar eBook

Índice
Agradecimientos.
Prólogo.
Parte I. Teoría
Capítulo 2. Análisis léxico ...
2.1 Utilidad del análisis léxico.
2.2 Funcionamiento ....
2.3 Términos utilizados....
2.4 Especificación del analizador léxico.
2.5 Construcción de un analizador léxico.
Capítulo 1. Introducción.
3
1.1 Definición de compilador.
3
1.2 Estructura de un compilador

1.2.1 Análisis léxico..

1.2.2 Análisis sintáctico
8
1.2.3 Análisis semántico.
9
1.2.4 Generación de código intermedio
10
1.2.5 Generación de código final
13
1.2.6 Tablas de símbolos y de tipos
13
1.2.7 Manejo de errores
14
1.3 Fases del proceso de compilación.
14
1.4 Herramientas y descripción del lenguaje.
[4:32 p.m., 23/6/2025] Zury Pedraza : COMPILADORES
2.5.1 Identificar las palabras reservadas.
2.5.2 Construir el diagrama de transiciones
2.6 Ejercicios resultos.
Ejercicio 2.1 ..
Ejercicio 2.2
Capítulo 3.Análisis sintáctico....
3.1 Funciones del analizador sintáctico .
3.2 Diseño de gramáticas
3.3 Dificultades para la creación de gramáticas.
3.3.1 La recursividad
3.3.2 La ambigüedad.
3.3.3 La asociatividad
3.3.4 La precedencia..
3.3.5 La parentización.
3.4 Análisis sintáctico lineal
3.5 Diagramas de sintaxis
3.6 Ejercicios resueltos...
Ejercicio 3.1
Ejercicio 3.2
Ejercicio 3.3
* 33
* Sз
* 35
..38
38
39
.... 40
4
42
46
46
47
48
VIII
Capítulo 4. Análisis sintáctico descendente
4.1 Introducción
4.2 Analizadores sintácticos predictivos..
4.3 Conjuntos de predicción y gramáticas LL(1)
4.3.1 Conjunto de primeros.
4.3.2 Conjunto de siguientes.
4.3.3 Conjunto de predicción y gramáticas LL(1).
4.4 Conversión a gramáticas LL(1)
4.4.1 Eliminación de la factorización por la izquierda..
4.4.2 Eliminación de la recursividad por la izquierda..
4.5 Analizadores sintáticos descendentes recursivos (ASDR).
4.6 Implementación de ASDP's.
4.6.1 Construcción de la tabla de análisis
5I
51
54
55
56
59
60
64
65
66
68
68
69
©
[4:32 p.m., 23/6/2025] Zury Pedraza : 4.6.2 Algoritmo de análisis..
71

4.7 Ejercicios resueltos.......
74

Ejercicio 4.1
..74

Ejercicio 4.2
..75



Capítulo 5. Análisis sintáctico ascendente.
..79
5.1 Introducción ...
79

5.2 Algoritmo de desplazamiento y reducción
.80

5.2.1 Acción ACEPTAR...
..82

5.2.2 Acción RECHAZAR
82

5.2.3 Método GOTO.
..82

5.2.4 Acción REDUCIR..
82

5.2.5 Acción DESPLAZAR
.82

5.2.6 Ejemplo de aplicación del algoritmo de desplazamiento

y reducción
82

5.3 Construcción de tablas de análisis sintáctico SLR
85

5.3.1 Elemento
85

5.3.2 Cierre o clausura..
86

5.3.3 Operación ir_a
87

5.3.4 Construcción de la colección canónica de conjuntos de

elementos
87
5.3.5 Construcción de un autómata a partir de la colección

canónica
91

5.3.6 Construcción de la tabla de analisis a partir de un

autómata ..
92

5.3.7 Conflictos en las tablas SLR
..95

5.4 Organigrama de las gramáticas
96

5.5 Ejercicios resueltos..
98

Ejercicio 5.1
98

100
Ejercicio 5.2


Capítulo 6. Tabla de tipos y de símbolos
.105
105

6.1 Introducción.

105
6.2 La tabla de tipos..
6.2.1 Implementación de la tabla de tipos

Este libro es un manual de ayuda para estudiosos de procesadores de lenguajes y/o compiladores, trata de la construcción de un compilador paso a paso, desde la especificación del lenguaje hasta la generación del código final (generalmente, un ejecutable), un tema que está poco tratado, sobre todo en español. Lo que pretendemos con este libro es dar las bases teóricas suficientes para poder abordar la construcción de un compilador completo, y luego implementarlo. En la parte teórica se detallan todas las fases para la creación de un procesador de lenguajes, y además se incluyen ejercicios que ayudan a aclarar las ideas expuestas.



9786077854685


PROGRAMACION

QA76.76.C65 .R8 2010