Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
6 g syllabus_esis_compiladores_mgt_marco_silva_2013_02
1. Pontificia Universidad Católica del Ecuador Sede Santo Domingo
Planificación y Currículo
1. DATOS INFORMATIVOS
ESCUELA: Sistemas
CARRERA: Ingeniería de Sistemas
Asignatura/Módulo: COMPILADORES Código:IS601
Plan de estudios: Malla en vigencia Nivel: Sexto
Prerrequisitos: Diseño de Lenguajes y Autómatas IS501
Correquisitos:
Período académico: 2013-01 N° Créditos: 4
DOCENTE.
Nombre:
Mgt. Marco Polo silva Segovia
Grado académico o título profesional:
Magister en Arquitectura de la
información
Magister en ciencias de la Educación
Mención Planeamiento y
Administración Educativa
Breve reseña de la actividad académica y/o profesional:
Mgt. Marco Polo Silva Segovia
Docente en el Instituto Tecnológico Superior Aeronáutico I.T.S.A.
Docente de la Universidad Técnica de Cotopaxi U.T.C.
Docente en el convenio UTI-ITCA
Docente de Pregrado y Postgrado de la P.U.C.E.S.A.
Docente del Departamento de Ingeniería Eléctrica, Electrónica y Software de la E.S.P.E.L.
Docente de Pregrado y Postgrado del S.I.N.A.P.U.C.E.
Desarrollo de proyectos de investigación en las áreas de electrónica digital y micro programable,
Diseño de mecanismos y robótica, Automatización industrial e Inteligencia artificial aplicada al
diseño de robots humanoides y móviles.
Indicación de horario de atención al estudiante:
Teléfono: 0998399674
2. DESCRIPCIÓN DEL CURSO
Este curso describe como un compilador o interprete realiza el Análisis Léxico (Scanning)
basado en gramáticas y autómatas para la generación de tokens, continua con el Análisis
Sintáctico (Parsing), en donde se enfatizan sus características, gramáticas y métodos empleados,
entre ellos: Análisis Descendente con método recursivo, Análisis Ascendente con el método de
desplazamiento – reducción (handler), Método LR; y, concluye con proyecto de generación de
un analizador léxico – sintáctico.
2. Pontificia Universidad Católica del Ecuador Sede Santo Domingo
Planificación y Currículo
3. OBJETIVO GENERAL
Entender cómo se realiza el proceso de compilación: traducción de un programa escrito en un
lenguaje de programación a otro, programa objeto, expresado en lenguaje de máquina; en sus
etapas de análisis (verificación) gramatical del programa fuente y generación de código objeto.
4. RESULTADOS DE APRENDIZAJE
Al finalizar el curso, el/a estudiante estará en
capacidad de
Nivel de desarrollo de
los resultados de
aprendizaje
Inicial / Medio / Alto
Comprender la arquitectura de las computadoras
basadas en Von Neumann
I
Identificar los elementos que integran una
computadora y la forma en que se relacionan.
M
Describir el funcionamiento y técnicas de
transferencia de datos entre los elementos
internos de una computadora.
M
Traducir sentencias básicas de alto nivel a
lenguaje binario de acuerdo a las arquitecturas
MIPS.
M
Reconocer la organización y arquitectura de
hardware con compromiso y análisis meta
cognitivo en base a estándares internacionales.
M
Explicar el diseño de hardware considerando
arquitecturas de computadoras de 4ta
generación que funcionen correctamente.
A
Construir sistemas computacionales acorde a las
necesidades empresariales, a las normas de
calidad y a la responsabilidad social y ambiental.
A
Valorar de acuerdo a las ecuaciones de
rendimiento que arquitectura de computadoras
es la mejor.
A
3. Pontificia Universidad Católica del Ecuador Sede Santo Domingo
Planificación y Currículo
5. RELACIÓN CONTENIDOS, ESTRATEGIAS DIDÁCTICAS Y RESULTADOS DE APRENDIZAJE
CONTENIDOS
(UNIDADES Y TEMAS)
SEMANA
N° HORAS
TRABAJO AUTÓNOMO
DEL/A ESTUDIANTE
ESTRATEGIAS DE
ENSEÑANZA -
APRENDIZAJE
RESULTADOS DE
APRENDIZAJE
EVIDENCIAS
CLASES
Tutoría
Actividades
N°dehoras
Descripción
Valoración
Teóricas
Prácticas
1 INTRODUCCIÓN A LA
COMPILACION
1.1 Compiladores
1.2 Análisis del programa fuente
1.3 Las fases de un compilador
1.4 Programas de sistemas
relacionados con un compilador
1.5 El agrupamiento de las fases
1.6 Herramientas para la
construcción de
compiladores
1ra
2da
3ra
4ta
14 2
*Investigar 3 herramientas para
el análisis de código, y
socializarlas
*Construir un Mapa Conceptual
de la máquina multinivel.
*Resolver ejercicios planteados
sobre la fase de análisis del
compilador.
*Resolver Ejercicios sobre
programas de un compilador
*Realizar un cuadro sinóptico
sobre el contenido de los
subtemas 1.5 y 1.6
2
2
2
2
2
Conferencias
Lectura
comprensiva
Construcción de
conceptos.
Taller grupal
*Comprender de
manera general las
fases, componentes y
procesos inmersos en un
compilador.
*Presentación de
documento con
herramientas investigadas y
defensa.
*Documento de trabajo en
taller grupal.
*Documento con ejercicios
resueltos.
*Documento con ejercicios
resueltos.
*Presentación de temática
en organizadores gráficos
EVALUACIÓN DE
CONOCIMIENTOS
1
0,5
0,5
0,5
0,5
2
4. Pontificia Universidad Católica del Ecuador Sede Santo Domingo
Planificación y Currículo
2 UN COMPILADOR SENCILLO DE
UNA PASADA
2.1 Perspectiva
2.2 Definición de la sintaxis
2.3 Traducción dirigida por la sintaxis
2.4 Análisis sintáctico
2.5 Traductor de expresiones
simples
2.6 Análisis léxico
2.7 Incorporación de una tabla de
símbolos
2.8 Máquinas de pila abstractas
2.9 Reunión de las técnicas
5ta
6ta
7ma
8va
10 2
*Lectura comprensiva de
subtemas 2.1 y 2.2 Socializar en
clases
*Resolver ejercicios planteados
de subtemas 2.3
*Sintetizar los pasos para la
generación de un árbol de
análisis sintáctico.
*Aplicación de formas recursivas
izquierda y derecha para generar
una cadena
2
2
1
2
Conferencias
Construcción de
conceptos.
Lluvia de ideas
Preguntas
intercaladas
Talleres grupales
*Identificar y
comprender las fases y
los procesos inherentes
a un compilador de una
pasada.
*Entrega de documento con
síntesis de subtemas 2.1 y
2.2, con defensa.
*Entrega de documento con
ejercicios planteados y
resueltos.
*Entrega de documento con
síntesis para la generación
de árbol sintáctico.
*Entrega de documento con
aplicativo de formas
recursivas.
*Entrega de documento con
resolución del problema
planteado en taller grupal.
EXAMEN PRIMER
PARCIAL
Revisión de Portafolio
0,5
0,5
0,5
1
0,5
6
1
3 ANALISIS LEXICO
3.1 Función del analizador léxico
3.2 Manejo de los buffers de entrada
3.3 Especificación de los
componentes léxicos
3.4 Reconocimiento de los
componentes léxicos
3.5 Un lenguaje para la
especificación de analizadores
léxicos
3.6 Autómatas finitos
3.7 Paso de una expresión regular a
un AFN
3.8 Diseño de un generador de
analizadores léxicos
3.9 Optimización buscadores por
concordancia de patrones basados
en AFD
9na
10ma
11va
12va
13va
20 4
*Lectura comprensiva de los
subtemas 3.1, 3.2 y 3.3.
Socializar en clases la síntesis.
*Resolver ejercicios planteados
sobre obtención de un AFN a
partir de expresiones regulares.
* Implementar un compilador en
cualquier herramienta de
programación. Fase
inicial:Análisis léxico(Defensa
grupal)
2
2
6
Conferencias
Construcción de
conceptos.
Talleres grupales
Preguntas
intercaladas
*Identificar y
comprender las fases y
los procesos inherentes
al Análisis Léxico.
*Entrega de documento con
síntesis de subtemas 3.1,y
3.2 y 3.3
*Entrega de documento con
ejercicios planteados y
resueltos.
*Entrega de CD, con
código de la primera fase
del proyecto. Defensa
grupal
EXAMEN SEGUNDO
PARCIAL
1
0,5
1,5
2
5. Pontificia Universidad Católica del Ecuador Sede Santo Domingo
Planificación y Currículo
4 ANALISIS SINTACTICO
4.1 El papel del analizador sintáctico
4.2 Gramáticas independientes del
contexto
4.3 Escritura de una gramática
4.4 Análisis sintácticodescendente
4.5 Análisis sintáctico ascendente
4.6 Análisis sintáctico por
precedencia de operadores
4.7 Analizadores sintácticos LR
4.8 Uso de gramáticas ambiguas
4.9 Generadores de analizadores
sintácticos
13va
14va
15va
16va
08 08
*Lectura comprensiva de los
subtemas 4.1. 4.2 y 4.3.
Socializar en clases la síntesis.
*Resolver ejercicios planteados
sobre análisis sintáctico
descendente y ascendente.
*Investigar y exponer el tema de
Gramáticas ambiguas
* Implementar un compilador en
cualquier herramienta de
programación. Fase final:
Incluida todas las fases de un
compilador. Defensa grupal
3
2
4
8
Conferencias
Construcción de
conceptos.
Situaciones
problémicas
Talleres grupales
*Identificar y
comprender las fases y
los procesos inherentes
al Análisis Sintáctico.
*Entrega de documento con
síntesis de subtemas 3.1,y
3.2 y 3.3
*Entrega de documento con
ejercicios planteados y
resueltos.
*Entrega de CD, con
código del proyecto
finalizado. Defensa del
proyecto
EXAMEN FINAL
Revisión de Portafolio
1
0,5
2
5,5
1
6. Pontificia Universidad Católica del Ecuador Sede Santo Domingo
Planificación y Currículo
6. METODOLOGÍA Y RECURSOS
a. METOLOGÍA
Los temas y subtemas componentes de esta materia, serán socializados,
disertados y analizados a través de enfoques dinámicos y participativos; se
pondrá mayor énfasis en los apartados de mayor complejidad o que sean
susceptibles de confusión. Se realizaran talleres de grupos pequeños de
estudiantes para resolver los diferentes problemas planteados, se realizaran
foros de discusión sobre determinados temas, además se enviaran trabajos
aplicativos y de investigación para ser resueltos fuera del aula, estos trabajos
pueden ser grupales o individuales, esto dependiendo de la complejidad de los
mismos; los trabajos de investigación serán expuestos en el aula por los
estudiantes.
b. RECURSOS
Se utilizará como recurso bibliográfico base para esta materia un Folleto guía
diseñado y estructurado por el docente de esta materia; además se recomienda
hacer uso de un libro de Compiladores, el cual es muy fácil de entender,
también se hará uso de algunos links de internet en los cuales hay información
importante sobre la generación de compiladores.
Además se hará uso de computador y proyector para proyectar diapositivas.
En los recursos convencionales se utilizará la pizarra, tiza líquida y borrador.
7. EVALUACIÓN
TIPO DE EVALUACIÓN CRONOGRAMA CALIFICACIÓN
1. PARCIAL 15
2. PARCIAL 15
3. FINAL 20
TOTAL 50
8. RÚBRICAS DE EVALUACIÓN DE EVIDENCIAS
7. Pontificia Universidad Católica del Ecuador Sede Santo Domingo
Planificación y Currículo
UNIDADES Y
TEMAS
RESULTADO DE
APRENDIZAJE
EVIDENCIA CRITERIOS
DE
EVALUACIÓN
1 INTRODUCCIÓN A
LA COMPILACION
1.1 Compiladores
1.2 Análisis del
programa fuente
1.3 Las fases de un
compilador
1.4 Programas de
sistemas relacionados
con un compilador
1.5 El agrupamiento
de las fases
1.6 Herramientas para
la construcción de
compiladores
Comprender de manera
general las fases,
componentes y procesos
inmersos en un
compilador.
*Presentación de
documento con
herramientas
investigadas.
*Documento de
trabajo en taller
grupal.
*Documento con
ejercicios resueltos.
*Documento con
ejercicios resueltos.
*Presentación de
temática en
organizadores
gráficos
EVALUACIÓN DE
CONOCIMIENTOS
Puntualidad en
entrega.
Originalidad.
Argumentación
de contenidos.
Ortografía
Dominio de
contenido
Cumple con los
compromisos
adquiridos
Secuencialidad
Ejemplifica
Despierta la
atención e
interés de los
compañeros.
2 UN COMPILADOR
SENCILLO DE UNA
PASADA
2.1 Perspectiva
2.2 Definición de la
sintaxis
2.3 Traducción dirigida
por la sintaxis
2.4 Análisis sintáctico
2.5 Traductor de
expresiones simples
2.6 Análisis léxico
2.7 Incorporación de una
tabla de símbolos
2.8 Máquinas de pila
abstractas
2.9 Reunión de las
técnicas
Identificar y comprender
las fases y los procesos
inherentes a un
compilador de una
pasada.
*Entrega de
documento con
síntesis de subtemas
2.1 y 2.2, con
defensa.
*Entrega de
documento con
ejercicios planteados
y resueltos.
*Entrega de
documento con
síntesis para la
generación de árbol
sintáctico.
*Entrega de
documento con
aplicativo de formas
recursivas.
*Entrega de
documento con
resolución del
problema planteado
en taller grupal.
EXAMEN PRIMER
PARCIAL
Puntualidad en
entrega.
Originalidad.
Argumentación
de contenidos.
Ortografía
Dominio de
contenido
Cumple con los
compromisos
adquiridos
Secuencialidad
Ejemplifica
Despierta la
atención e
interés de los
compañeros.
3 ANALISIS LEXICO
3.1 Función del
analizador léxico
3.2 Manejo de los
Identificar y comprender
las fases y los procesos
inherentes al Análisis
*Entrega de
documento con
síntesis de subtemas
Puntualidad en
entrega.
Originalidad.
8. Pontificia Universidad Católica del Ecuador Sede Santo Domingo
Planificación y Currículo
buffers de entrada
3.3 Especificación de los
componentes léxicos
3.4 Reconocimiento de
los componentes léxicos
3.5 Un lenguaje para la
especificación de
analizadores léxicos
3.6 Autómatas finitos
3.7 Paso de una
expresión regular a un
AFN
3.8 Diseño de un
generador de
analizadores léxicos
3.9 Optimización
buscadores por
concordancia de
patrones basados en
AFD.
Léxico. 3.1,y 3.2 y 3.3
*Entrega de
documento con
ejercicios planteados
y resueltos.
*Entrega de CD, con
código de la primera
fase del proyecto.
EVALUACIÓN DE
CONOCIMIENTOS
Argumentación
de contenidos.
Ortografía
Dominio de
contenido
Cumple con los
compromisos
adquiridos
Secuencialidad
Ejemplifica
Despierta la
atención e
interés de los
compañeros.
4 ANALISIS
SINTACTICO
4.1 El papel del
analizador sintáctico
4.2 Gramáticas
independientes del
contexto
4.3 Escritura de una
gramática
4.4 Análisis
sintácticodescendente
4.5 Análisis sintáctico
ascendente
4.6 Análisis sintáctico
por precedencia de
operadores
4.7 Analizadores
sintácticos LR
4.8 Uso de gramáticas
ambiguas
4.9 Generadores de
analizadores sintácticos.
Identificar y comprender
las fases y los procesos
inherentes al Análisis
Sintáctico.
*Entrega de
documento con
síntesis de subtemas
3.1,y 3.2 y 3.3
*Entrega de
documento con
ejercicios planteados
y resueltos.
*Entrega de CD, con
código del proyecto
finalizado
EXAMEN PRIMER
PARCIAL
Revisión de
Portafolio
Puntualidad en
entrega.
Originalidad.
Argumentación
de contenidos.
Ortografía
Dominio de
contenido
Cumple con los
compromisos
adquiridos
Secuencialidad
Ejemplifica
Despierta la
atención e
interés de los
compañeros.
9. BIBLIOGRAFÍA
a. BÁSICA
Bibliografía
(basarse en normas APA)
¿Disponible en
Biblioteca a la
fecha?
No. Ejemplares
(si está
disponible)
Aho Alfred, SethiRavi, Ullman Jefferey,1998,
Compiladores: Principios, técnicas y
herramientas, México,Pearson
SI UNO
Ruiz Jacinto, 2010,Compiladores teoría e
implementación, España, Grupo RC
NO NINGUNO
b. COMPLEMENTARIA
9. Pontificia Universidad Católica del Ecuador Sede Santo Domingo
Planificación y Currículo
Bibliografía
(basarse en normas APA)
¿Disponible en
Biblioteca a la
fecha?
No. Ejemplares
(si está
disponible)
Ortega Julio, 2004, Construcción de
compiladores, México, International Thomson
Editores
NO NINGUNO
c. RECOMENDADA
Bibliografía
(basarse en normas APA)
¿Disponible en
Biblioteca a la
fecha?
No. Ejemplares
(si está
disponible)
PerézIvan, 2005, Lenguajes y Compiladores,
Venezuela, Ucab
NO NINGUNO
d. BIBLIOTECAS VIRTUALES Y SITIOS WEB RECOMENDADOS
http://es.scribd.com/doc/4750526/INTRODUCCION-A-COMPILADORES
http://www.ctr.unican.es/asignaturas/lan/compila-2en1.pdf
http://www.monografias.com/trabajos11/compil/compil2.shtml
http://www.slideshare.net/leopoldocapa/introduccin-a-compiladores-presentation
http://compiladorespucesd.blogspot.com/p/evaluacion.html
Revisado:
_______________________
f) Coordinación de Docencia Fecha: ____________
Aprobado:
_______________________
f) Director de Escuela
Fecha: ____________
_______________________
Por el Consejo de Escuela Fecha: ____________