compiladores

Páginas: 137 (34159 palabras) Publicado: 4 de marzo de 2014
Análisis y Diseño de Compiladores
Emiliano Llano Díaz

El autor y Exa Ingeniería ®no están afiliados a ningún fabricante.
Se han realizado todos los esfuerzos posibles para proveer una información veraz y completa. Sin embargo, el
autore no se hace responsables de omisiones, uso al que se destine la información o por infracciones a patentes
u otros derechos de terceros que resulten.Derechos Reservados ©por el autor 2002. Derechos mundiales reservados. Ninguna parte de esta publicación
puede ser reproducida o almacenada en ningún medio de retransmisión, fotocopiado o reproducción de ningún
tipo, incluyendo pero no limitándose a fotocopia, fotografía, fax, almacenamiento magnético u otro registro,
sin permiso expreso del autor y de la editorial.
Compuesto totalmente encomputadora por:
Exa Ingeniería SA de CV ®
Bajío 287-101
Col. Roma México, D.F.
5564-10-11 5564-02-68 FAX 5264-61-08

ISBN 970-91050-0-0
SEP 10137/91
Registrado ante la SEP en la propiedad intelectual del autor

Impreso y hecho en México.
1era edición junio 2002.

Contenido
Introducción

xi

1. Compiladores

1-1

1.1 Objetivos

1-1

1.2 Compiladores

1-1

1.2.1 Análisis ySíntesis

1.3 El Análisis

1-4

1-6

1.3.1 Análisis Léxico

1-7

1.3.2 Análisis de Sintaxis

1-7

1.3.3 Análisis Semántico

1-8

1.4 Fases de un Compilador

1-9

1.4.1 Tabla de Símbolos

1-9

1.4.2 Detección de errores

1-9

1.4.3 La fase de Análisis

1-10

1.5 Programas auxiliares

1-12

1.5.1 Preprocesadores

1-12

1.5.2 Ensambladores

1-12

1.5.3Ensambladores de dos pasos

1-13

1.5.4 Cargadores y ligadores

1-13

1.6 Agrupamiento de Fases

1-13

1.6.1 Parte Inicial y Final

1-13

1.6.2 Pasos

1-14

1.6.2.1 Reducir el número de pasos

1-14

1.7 Herramientas de Construcción

1-15

1.7.1 Modelo de un compilador

1-15

1.7.2 Relaciones entre las partes de un compilador

1-19

1.7.3 Errores

1-20

1.8Bibliografía

1-21

i

Análisis y Diseño de Compiladores

Emiliano Llano Díaz

2. Gramáticas

2-1

2.1 Objetivos

2-1

2.2. Gramática Generativa

2-1

2.3 Gramática

2-3

2.3.1 Alfabeto y cadenas

2-4

2.3.2 No terminales y Producciones

2-5

2.3.3 Ejemplos

2-5

2.4 Jerarquías de Chomsky

2-7

2.5 La gramática y su máquinas

2-8

2.5.1 Máquina de Turing2-8

2.5.2 Autómata lineal restringido

2-9

2.5.3 Autómata con pila

2-10

2.5.4 Eliminando las Producciones Vacías

2-10

2.5.5 Gramática libre de contexto y sensitiva al contexto

2-11

2.5.6 Autómatas de Estado Finito

2-11

2.6 Cadenas vacías y Lenguajes vacíos

2-12

2.7 Derivaciones Canónicas

2-12

2.8 Ambigüedades

2-14

2.9 Pensando en formagramatical

2-14

2.9.1 Los límites de los autómatas de estado finito

2-15

2.9.2 Contando en una gramática libre de contexto

2-15

2.9.3 Sensibilidad al contexto

2-17

2.10 Algunos Ejemplos de Gramáticas

2-18

2.11 Notación BNF

2-18

2.12 Notación BNF Extendida

2-20

2. 13 Bibliografía

2-21

3. Diseño de Lenguajes

3-1

3.1 Objetivos
3.2 Introducción

ii3-1
3-1

Contenido

3.3 Análisis del problema

3-1

3.4 Consideraciones Preliminares

3-2

3.5 Fuente de ideas

3-3

3.6 Metas y filosofías del diseño del lenguaje de programación

3-5

3.6.1 Comunicación humana

3-5

3.6.2 Prevención y corrección de errores

3-6

3.6.3 Utilidad

3-8

3.6.4 Efectividad

3-8

3.6.5 Grado de compilación

3-9

3.6.6 Eficiencia3-9

3.6.7 Independencia de la máquina

3-10

3.6.8 Simplicidad

3-11

3.6.9 Uniformidad

3-11

3.6.10 Ortogonalidad

3-12

3.6.11 Generalización y especialización

3-12

3.6.12 Otras filosofías de diseño

3-12

3.7 Diseño detallado

3-13

3.7.1 Microestructura

3-13

3.7.2 Estructuras de las Expresiones

3-14

3.7.3 Estructuras de datos

3-15...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Compiladores
  • Compilador
  • COMPILADORES
  • Compiladores
  • Compiladores
  • Compiladores
  • compiladores
  • Compiladores

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS