Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Comp Il Adores
Comp Il Adores
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
PROGRAMA SINTTICO
CARRERA: Ingeniera en Computacin.
ASIGNATURA:
Compiladores
SEMESTRE:
Quinto
OBJETIVO GENERAL:
El alumno disear un compilador que funcione completamente y con cada una de sus partes. Explicar las
etapas de diseo y su trabajo respectivo en la traduccin de un lenguaje de alto nivel hasta uno de bajo nivel.
CONTENIDO SINTTICO:
I. Introduccin.
II. Anlisis Lxico.
III. Anlisis Sintctico.
IV. Anlisis Semntico.
V. Cdigo Intermedio
VI. Generacin de Cdigo.
METODOLOGA:
Preparacin y discusin de los temas por parte de los alumnos con gua del profesor. Resolucin de problemas
bajo la supervisin del profesor. Trabajo en equipo. Uso de material didctico y presentaciones en Power Point.
EVALUACIN Y ACREDITACIN:
La evaluacin se har de manera diagnstica de seguimiento y sumativa, donde se evaluarn el aprovechamiento
de las unidades, mediante tres exmenes departamentales con un valor del 60% de la calificacin terica. El 10%
ser evaluado de la participacin de los alumnos tomando en cuenta los siguientes aspectos: bsqueda
bibliogrfica en revistas cientficas, libros e Internet, etc., participacin en clase, tareas extraclase.
El 30% restante ser evaluado de los reportes y prcticas de laboratorio.
BIBLIOGRAFA:
Kenneth C. and Louden, Construccin de Compiladores Principios y Prctica, Edit. Thomnson, Mxico 2004.
p. 446
Hopcroft, John E. And Ullman Jefrey D., Compiladores Edit. Addison-Wesley, U.S.A, Edit. 2002. p. 91-233,
p.273-326
Kelley, Dean, Introduccin a la Teora de Autmatas y Lenguajes Formales, Edit. Prentice Hall, Espaa, 1995.
p.380
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
ESCUELA: Escuela Superior de Ingeniera Mecnica y
Elctrica.
CARRERA: Ingeniera en Computacin.
COORDINACIN: Academia de Computacin.
DEPARTAMENTO: Ingeniera en Computacin
ASIGNATURA: Compiladores
SEMESTRE: Quinto
CLAVE: CLA028
CRDITOS: 7.5
VIGENTE: Agosto 2005
TIPO DE ASIGNATURA: Terico-Prctica
MODALIDAD: Escolarizada.
TIEMPOS ASIGNADOS
HORAS/SEMANA/TEORA: 3.0
HORAS/SEMANA/PRCTICA: 1.5
HORAS/SEMESTRE/TEORA: 54
HORAS/SEMESTRE/PRCTICA: 27
HORAS/TOTALES: 81
PROGRAMA ELABORADO O ACTUALIZADO POR:
Academia de Computacin de ESIME Culhuacan
REVISADO POR: Subdireccin Acadmica de ESIME Culhuacan
APROBADO POR: Consejo Tcnico Consultivo Escolar de ESIME Culhuacan.
Ing. Ernesto Mercado Escutia
AUTORIZADO POR: Comisin de Planes y Programas del
Consejo General Consultivo del IPN
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
ASIGNATURA: Compiladores CLAVE: CLA028 HOJA: 2 DE 10
FUNDAMENTACIN DE LA ASIGNATURA
El progreso de las ciencias de la computacin ha sido basado en la notacin formal matemtica y lgica dentro de la
cual se han desarrollado los lenguajes formales, estos junto con los Autmatas de estado finito han dado pauta a la
creacin de compiladores que traducen diferentes lenguajes de programacin a un solo tipo de lenguaje, cdigo de
maquina, lo cual permite la utilizacin de computadoras con diferente propsito y de utilizacin masiva y comn.
El estudio de los Compiladores permitir al profesional de la carrera de Ingeniera en Computacin comprender el
funcionamiento y trabajo desempeado en el intento por comunicar ideas a trabajo computacional: la computacin y
los lenguajes de programacin evolucionan y se acercan mas a la comunicacin directa hombre - mquina.
Las Matemticas discretas y la Teora de Autmatas son antecedentes de esta asignatura cuyos conceptos y
herramientas sern aplicables consecuentemente a la materia de Sistemas Operativos, Arquitectura de
Computadoras y Lenguajes de Arquitecturas en Paralelo.
OBJETIVO DE LA ASIGNATURA
El alumno disear un compilador que funcione completamente y con cada una de sus partes. Explicar las etapas de
diseo y su trabajo respectivo en la traduccin de un lenguaje de alto nivel hasta uno de bajo nivel.
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
ASIGNATURA: Compiladores CLAVE: CLA028 HOJA: 3 DE 10
No. UNIDAD I NOMBRE: Introduccin
OBJETIVOS PARTICULARES DE LA UNIDAD
El alumno describir los elementos fundamentales para construir un compilador.
HORAS No.
TEMA
T E M A S
T P EC
CLAVE BIBLIOGRFICA
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.8.1
Historia
Programas relacionados con los compiladores
Proceso de traduccin
Estructuras de datos principales en un compilador
Otras cuestiones referentes a la estructura del
compilador
Arranque automtico y portabilidad
Lenguaje y compilador de muestra TINY
Un lenguaje para un proyecto de compilador
Ejercicios
Subtotal
1.5
1.5
1.5
1.5
6.0
1.5
1.5
3.0
6.0
6.0
1B, 4B, 2C,3C
ESTRATEGIA DIDCTICA
Preparacin de los temas por parte del alumno antes de la clase bajo la gua del profesor. Desarrollo de trabajos
extra clase y prcticas de laboratorio. Desarrollo de las definiciones formales y ejemplos de cada tema por parte del
profesor.
PROCEDIMIENTO DE EVALUACIN
La evaluacin se har de manera diagnstica, formativa, de seguimiento y sumativa, considerando los siguientes
aspectos para las unidades I y II:
- Participacin de las actividades en clase.
- Tareas extraclase. 10%
- Examen Departamental 60%
- Prcticas de laboratorio 30%
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
ASIGNATURA: Compiladores CLAVE: CLA028 HOJA: 4 DE 10
No. UNIDAD II NOMBRE: Anlisis Lxico
OBJETIVOS PARTICULARES DE LA UNIDAD
El alumno construir un analizador lxico para un Compilador basado en un autmata finito. Demostrar la primera
parte de anlisis del compilador.
HORAS No.
TEMA
T E M A S
T P EC
CLAVE BIBLIOGRFICA
2.1
2.2
2.3
2.4
2.5
2.6
2.6.1
El proceso de anlisis lxico
Expresiones regulares
Autmatas finitos
Desde las expresiones regulares hasta los DFA
Implementacin de un analizador lxico TINY
(Diminuto)
Uso de Lex para generar automticamente un
analizador lxico
Ejercicios
Subtotal
1.5
1.5
1.5
1.5
1.5
3.0
1.5
12.0
1.5
1.5
1.5
4.5
6.0
6.0
1B, 4B,2C,3C,5C
ESTRATEGIA DIDCTICA
Investigacin de conceptos por parte del alumno.
Desarrollar en clase las definiciones formales y ejemplos de cada tema por parte del profesor.
Formacin de grupos para la solucin de ejercicios coordinados por el profesor.
Realizacin de tareas y trabajos extra clase.
Realizacin de prcticas de laboratorio.
PROCEDIMIENTO DE EVALUACIN
La evaluacin se har de manera diagnstica, formativa, de seguimiento y sumativa, considerando los siguientes
aspectos para las unidades I y II:
- Participacin de las actividades en clase.
- Tareas extraclase 10%
- Examen Departamental 60%
- Prcticas de laboratorio. 30%
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
ASIGNATURA: Compiladores CLAVE: CLA028 HOJA: 5 DE 10
No. UNIDAD III NOMBRE: Anlisis Sintctico
OBJETIVOS PARTICULARES DE LA UNIDAD
El alumno disear el modulo de Anlisis Sintctico de un Compilador.
HORAS No.
TEMA
T E M A S
T P EC
CLAVE BIBLIOGRFICA
3.1
3.1.1
3.1.2
3.1.3
3.2
3.3
3.4
3.4.1
3.4.2
3.4.3
3.5
3.5.1
3.5.2
3.5.3
3.5.4
Proceso del anlisis sintctico
Gramticas libres de contexto
rboles de anlisis gramticas y rboles sintcticos
abstractos
Ambigedad
Notaciones extendidas: EBNF y diagramas de sintaxis
Sintaxis del lenguaje TINY
Anlisis sintctico descendente mediante mtodo
descendente recursivo
Anlisis sintctico LL(1)
Un analizador sintctico descendente recursivo para
el lenguaje TINY
Recuperacin de errores en analizadores sintcticos
descendentes
Perspectiva general del anlisis sintctico ascendente
Autmatas finitos de elementos LR(0)y anlisis
sintctico LR(0)
Anlisis sintctico SLR(1)
Yacc: un generador de analizadores sintcticos
LALR(1)
Recuperacin de errores en analizadores sintcticos
ascendentes
Subtotal
3.0
1.5
1.5
3.0
3.0
12.0
1.5
1.5
1.5
4.5
12.0
12.0
1B, 4B,2C,3C,5C
ESTRATEGIA DIDCTICA
Preparacin por parte de los alumnos, de los temas antes de la clase bajo la gua del profesor.
Desarrollo en clase las definiciones formales y ejemplos de cada tema por parte del profesor.
Desarrollo de trabajos extra clase con la finalidad de dominar cada tema.
Realizacin de prcticas de laboratorio
PROCEDIMIENTO DE EVALUACIN
La evaluacin se har de manera diagnstica, formativa, de seguimiento y sumativa, considerando los siguientes
aspectos para la unidad III:
- Participacin de las actividades en clase.
- Tareas extraclase 10%
- Examen departamental 60%
- Prcticas de laboratorio 30%
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
ASIGNATURA: Compiladores CLAVE: CLA028 HOJA: 6 DE 10
No. UNIDAD IV NOMBRE: Anlisis Semntico
OBJETIVOS PARTICULARES DE LA UNIDAD
El alumno disear el modulo de Anlisis Semantico de un Compilador.
HORAS No.
TEMA
T E M A S
T P EC
CLAVE BIBLIOGRFICA
4.1
4.1.1
4.2
4.3
4.4
4.4.1
Atributos y gramticas con atributos
Algoritmos para clculo de atributos
La tabla de smbolos
Tipos de datos y verificacin de tipos
Un analizador semntico para el lenguaje TINY
Ejercicios
Subtotal
3.0
3.0
3.0
3.0
12.0
1.5
1.5
1.5
1.5
4.5
6.0
6.0
1B, 4B, 2C,3C
ESTRATEGIA DIDCTICA
Preparacin por parte de los alumnos de los temas antes de la clase bajo la gua del profesor.
Desarrollo en clase las definiciones formales y ejemplos de cada tema por parte del profesor.
Desarrollo de trabajos extra clase con la finalidad de dominar cada tema.
Realizacin de prcticas de laboratorio
PROCEDIMIENTO DE EVALUACIN
La evaluacin se har de manera diagnstica, formativa, de seguimiento y sumativa, considerando los siguientes
aspectos:
- Participacin de las actividades en clase.
- Tareas extraclase 10%
- Examen Departamental 60%
- Prcticas de laboratorio. 30%
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
ASIGNATURA: Compiladores CLAVE: CLA028 HOJA: 7 DE 10
No. UNIDAD V NOMBRE: Cdigo Intermedio
OBJETIVOS PARTICULARES DE LA UNIDAD
El alumno disear las reglas y el Cdigo Intermedio resultante de la etapa de anlisis del Compilador.
HORAS No.
TEMA
T E M A S
T P EC
CLAVE BIBLIOGRFICA
5.1
5.2
5.3
5.3.1
Cdigo intermedio y estructuras de datos para
generacin de cdigo
Tcnicas bsicas de generacin de cdigo
Tcnicas de optimacin de cdigo
Ejercicios
Subtotal
1.5
1.5
3.0
6.0
1.5
1.5
1.5
4.5
6.0
6.0
1B, 4B, 2C,3C
ESTRATEGIA DIDCTICA
Preparacin de los temas por parte de los alumnos antes de la clase bajo la gua del profesor.
Desarrollo en clase las definiciones formales y ejemplos de cada tema por parte del profesor.
Desarrollo de trabajos extra clase con la finalidad de dominar cada tema.
Uso de recursos audiovisuales.
Realizacin de prcticas de laboratorio
PROCEDIMIENTO DE EVALUACIN
La evaluacin se har de manera diagnstica, formativa, de seguimiento y sumativa, considerando los siguientes
aspectos para las unidades IV, V y VI:
- Participacin de las actividades en clase.
- Tareas extraclase 10%
- Examen departamental 60%
- Prcticas de laboratorio 30%
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
ASIGNATURA: Compiladores CLAVE: CLA028 HOJA: 8 DE 10
No. UNIDAD VI NOMBRE: Generacin de Cdigo
OBJETIVOS PARTICULARES DE LA UNIDAD
El alumno disear una Mquina de Turing para funciones recursivas primitivas, explicar el problema del
paro de una Mquina de Turing y los conceptos de Decidibilidad y Computabilidad.
HORAS No.
TEMA
T E M A S
T P EC
CLAVE BIBLIOGRFICA
6.1
6.2
6.3
6.4
6.5
Generacin de cdigo de referencias de estructuras
de datos
Generacin de cdigo de sentencias de control y
expresiones lgicas
Generacin de cdigo de llamadas de procedimientos
y funciones
Generacin de cdigo en compiladores comerciales:
dos casos de estudio
TM: Una mquina objetivo simple
Subtotal
1.5
1.5
1.5
1.5
20.0
1.5
1.5
1.5
1.5
6.0
8.0
8.0
1B, 4B,2C,3C
ESTRATEGIA DIDCTICA
Preparacin de los temas por parte del alumno antes de la clase bajo la gua del profesor.
Desarrollo en clase las definiciones formales y ejemplos de cada tema por parte del profesor.
Formacin de grupos para la discusin de resultados.
Desarrollo de trabajos extra clase con la finalidad de dominar cada tema.
Realizacin de prcticas de laboratorio
PROCEDIMIENTO DE EVALUACIN
La evaluacin se har de manera diagnstica, formativa, de seguimiento y sumativa, considerando los siguientes
aspectos para las unidades IV, V y VI:
- Participacin de las actividades en clase.
- Tareas extraclase 10%
- Examen departamental 60%
- Prcticas de laboratorio 30%
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
ASIGNATURA: Compiladores CLAVE: CLA028 HOJA: 9 DE 10
RELACIN DE PRCTICAS
PRACT.
No.
NOMBRE DE LA PRCTICA
UNIDAD
DURACIN
LUGAR DE REALIZACIN
1
2
3
4
5
6
Introduccin al diseo de
compiladores
Autmatas
Gramticas
Parsers
Traductores
Compiladores e interpretes
I
II
III
IV
V
VI
Total
3
4.5
4.5
4.5
4.5
6.0
27.0
Todas las prcticas se
llevaran a cabo en el
Laboratorio de
Computacin.
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
ASIGNATURA: Compiladores CLAVE: CLA028 HOJA: 10 DE 10
PERODO
UNIDAD
PROCEDIMIENTO DE EVALUACIN
1
2
3
I , II
III
IV , V
10% - Programas y ejercicios desarrollados en clase y extra clase.
60% - Examen del periodo.
30% - Prcticas de laboratorio
10% - Programas y ejercicios desarrollados en clase y extra clase.
60% - Examen del periodo.
30% - Prcticas de laboratorio
10% - Programas y ejercicios desarrollados en clase y extra clase.
60% - Examen del periodo.
30% - Prcticas de laboratorio
CLAVE B C BIBLIOGRAFA
1
2
3
4
5
6
7
X
X
X
X
X
X
X
Kenneth C. and Louden, Construccin de Compiladores Principios y Practica,
Edit. Thomnson, Mxico 2003. p. 446
Alfred V. Aho Compiladores Principios, Tcnicas y Herramientas
Edit. Addison-Wesley, U.S.A, Edic May 2000. p. 500
F. Sanchis Llorca Compiladores, Teora y Construccin
November 1991. p. 32-77
Kelley, Dean, Introduccin a la Teora de Autmatas y Lenguajes Formales, Edit.
Prentice Hall, Espaa, Edic. 1995. p. 380
Kimber, Efim., Theory of Computing, Edit.Prentice Hall, Inglaterra, Edic.2001. p. 1-88
Flynn, Ida M., McHoes, Ann M. Sistemas Operativos International Thomson Editores,
Tercera Edicin, 2003. p. 235-271
Hopcroft,John E. and Ullman Jefrey D. Introduccin a la Teora de Autmatas,
Lenguajes y Computacin Edit. Addison-Wesley, U.S.A, Edic. 2002. p. 91-233,
p. 273-326
INSTITUTO POLITCNICO NACIONAL
SECRETARA ACADMICA
DIRECCIN DE ESTUDIOS PROFESIONALES EN INGENIERA Y CIENCIAS
FSICO MATEMTICAS
PERFIL DOCENTE POR ASIGNATURA
1. DATOS GENERALES
ESCUELA: Escuela Superior de Ingeniera Mecnica y Elctrica
CARRERA: Ingeniera en Computacin, SEMESTRE Quinto
REA: BSICAS C. INGENIERA D. INGENIERA C. SOC. y HUM.
ACADEMIA: Computacin ASIGNATURA: Compiladores
ESPECIALIDAD Y NIVEL ACADMICO REQUERIDO: Ingeniera o Maestra
2. OBJETIVOS DE LA ASIGNATURA:
El alumno disear un compilador que funcione completamente y con cada una de sus partes. Explicar las etapas de
diseo y su trabajo respectivo en la traduccin de un lenguaje de alto nivel hasta uno de bajo nivel.
3. PERFIL DOCENTE:
CONOCIMIENTOS EXPERIENCIA
PROFESIONAL
HABILIDADES ACTITUDES
Experiencia en
programacin de alto y
bajo nivel, conocimientos
tericos de teora de
Autmatas, Anlisis de
Algoritmos y Estructuras
de Datos.
Haber Impartido clase en
Nivel Superior.
Formacin pedaggica.
Programacin en algn
lenguaje de computacin.
Dominio de la asignatura.
Manejo de grupos.
Comunicacin
(Transmisin del
conocimiento).
Capacidades de anlisis y
sntesis.
Motivacin al alumno.
Manejo de materiales
didcticos.
Tener vocacin por la
docencia.
Honestidad.
Ejercicio de la crtica
fundamentada.
Respeto (buena relacin
maestro-alumno).
Tolerancia.
tica.
Espritu de colaboracin.
Superacin docente y
profesional.
ELABOR REVIS AUTORIZ
__________________________ __________________________ ________________________
Ing. Jorge Fernando Veloz Ortiz M. en C. Alberto Paz Gutirrez Ing. Ernesto Mercado Escutia
Presidente de la Academia Subdirector Acadmico Director
de Computacin
FECHA: Agosto 2005