Download silabo - facultad de ingenieria de sistemas
Document related concepts
Transcript
FACULTAD DE INGENIERÍA DE SISTEMAS SÍLABO I. DATOS GENERALES: 1.1 CURSO : COMPILADORES 1.2 CODIGO : IV1066 1.3 CICLO : VI 1.4 CREDITOS :3 1.5 HORAS SEMANALES : 4 HORAS (Teoría: 02; Laboratorio: 02) II. FUNDAMENTACION: La asignatura de Compiladores forma parte del soporte adecuado en Ciencias de la Computación que el ingeniero de Sistemas necesita para dominar las teorías, metodologías y técnicas de las disciplinas de Sistemas de Información, y así proponer soluciones tecnológicas a las necesidades de información de las organizaciones, habilitándolas para que logren sus objetivos de una forma efectiva y eficiente. III. SUMILLA El curso comprende :Teoría de Lenguajes y la construcción de compiladores por fases, conceptos, definiciones formales, Analizador Léxico, Analizador Sintáctico, Tipos, contexto de desarrollo, Análisis Semántico, Tabla de Símbolos, Generación de Código, tratamiento y recuperación de errores. IV. COMPETENCIAS DE LA ASIGNATURA 1) REPRESENTA lenguajes formales utilizando expresiones regulares, autómatas finitos, o gramáticas, demostrando lógica y creatividad en el diseño de los mismos. 2) DISEÑA el Analizador Léxico y el Analizador Sintáctico para un lenguaje de programación sencillo, utilizando expresiones regulares, autómatas finitos deterministas y gramáticas libres de contexto, demostrando un alto nivel de abstracción y creatividad en la identificación y definición de tokens, así como en la formalización de la sintaxis respectivamente. 3) DISEÑA la Tabla de Símbolos y el Analizador Semántico para un lenguaje de programación sencillo utilizando estructuras de datos y gramáticas con atributos respectivamente demostrando un alto nivel de reflexión en la determinación de las comprobaciones semánticas a considerar V. UNIDADES DE APRENDIZAJE UNIDAD 1: INTRODUCCION Y ASPECTOS FORMALES Capacidades a desarrollarse en la Unidad de Aprendizaje: 1.1 RECONOCE las fases de un compilador y los aspectos formales. 1.2 REPRESENTA lenguajes formales sencillos utilizando gramática formal, demostrando lógica y creatividad en el diseño de los mismos. Programación de contenidos o saberes N° de semana 1 2 Contenidos Conceptuales Objetivos, introducción. Ambiente de compilación, fases de un compilador. Analizador Léxico, Analizador Sintáctico, análisis semántico, generación de código, tratamiento de errores. 3 Aspectos formales, definiciones, alfabeto, símbolos, cadena de palabras, frase. Gramática o Sintaxis, producciones, símbolos terminales, símbolos no terminales. Gramática formal, árboles de derivación sintáctica Contenidos Procedimentales Teoría: Participa del seminario del tema Lee los apuntes del tema Practica: Resuelve los ejercicios con la orientación del profesor. Presenta la solución de los ejercicios propuestos. Resuelve una práctica calificada sobre los ejercicios propuestos. Contenidos Actitudinales Asiste puntualmente a todas las clases. Participa de forma espontánea en la solución de ejercicios. Muestra responsabilidad en la presentación de la solución de los ejercicios propuestos. UNIDAD 2: JERARQUIA DE GRAMATICAS, ANALISIS LEXICO. Capacidades a desarrollarse en la Unidad de Aprendizaje: 2.1 DISEÑA expresiones regulares para representar patrones léxicos lenguaje formal representado. 2.2 DISEÑA autómatas finitos para reconocer lenguajes regulares y determina el lenguaje formal representado. 2.3 DISEÑA gramáticas libres de contexto para representar lenguajes sencillos y determina el lenguaje generado por una gramática dada. 2.4 DISEÑA el analizador léxico para un lenguaje de programación sencillo. 2.5 RECONOCE los tokens de una porción de código fuente con el analizador diseñado. N° de semana 4 5 Contenidos Conceptuales Derivaciones. Definición de un lenguaje Jerarquía de Gramáticas. Técnica de Análisis. Análisis Léxico Expresiones Regulares. Autómatas Finitos Deterministas. Diagramas de Transición. Tabla de Transición Gramáticas regulares y autómatas finitos. Autómatas Finitos No Deterministas 6 7 Contenidos Procedimentales Teoría: Participa del seminario del tema. Lee los apuntes del tema. Practica: Resuelve los ejercicios con la orientación del profesor. Presenta la solución de los ejercicios propuestos. Resuelve una práctica calificada sobre los ejercicios propuestos. Contenidos Actitudinales Asiste puntualmente a todas las clases. Participa de forma espontánea en la solución de ejercicios. Muestra responsabilidad en la presentación de la solución de los ejercicios propuestos UNIDAD X : EVALUACIÓN DEL APRENDIZAJE – EXAMEN X.1 RECONOCE el nivel de logro alcanzado durante el proceso de enseñanza – aprendizaje, en función de las unidades trabajadas. N° de semana TEMARIO 8 EVALUACION PARCIAL UNIDAD 3: ANALISIS SINTACTICO Capacidades a desarrollarse en la Unidad de Aprendizaje: 3.1. REPRESENTA la sintaxis de un lenguaje de programación sencillo mediante una gramática libre de contexto. 3.2. REALIZA el análisis sintáctico descendente y el análisis sintáctico ascendente de una porción de código fuente, con la gramática diseñada y acondicionada. Programación de contenidos o saberes N° de semana 9 10 11 12 Contenidos Conceptuales Análisis Sintáctico introducción Análisis Sintáctico Descendente análisis sintáctico Descendente recursivo. Análisis Predictivo no recursivo (APNR). Acciones del APNR. Gramáticas LL (1). Conjuntos First. Conjuntos Follow. Análisis Sintáctico Ascendente Análisis Sintáctico Ascendente. Análisis Ascendente por desplazamiento y reducción. Análisis Sintáctico LR. Tabla LR. Análisis Sintáctico por precedencia de Operadores. Contenidos Procedimentales Teoría: Participa en la ponencia del tema. Lee los apuntes del tema Practica: Resuelve los ejercicios con la orientación del profesor. Presenta la solución de los ejercicios propuestos. Resuelve una práctica calificada sobre los ejercicios propuestos. Contenidos Actitudinales Asiste puntualmente a todas las clases. Participa de forma espontánea en la solución de ejercicios. Muestra responsabilidad en la lectura de los apuntes de tema. Muestra responsabilidad en la presentación de la solución de los ejercicios propuestos. UNIDAD 4: ANALISIS SEMANTICO Capacidades a desarrollarse en la Unidad de Aprendizaje: 4.1. DISEÑA gramáticas atribuidas para la solución de problemas. 4.2. DISEÑA la Tabla de Símbolos para un lenguaje de programación sencillo. 4.3. MUESTRA el contenido de la Tabla de Símbolos para una porción de código fuente en una posición señalada. 4.4. DISEÑA el Comprobador de Tipos para un lenguaje de programación sencillo. Programación de contenidos o saberes: N° de semana 13 Contenidos Conceptuales Análisis Semántico comprobación de tipos. Tabla de Símbolos. Estructura de la T.S. Organización. Contenidos Procedimentales Teoría: Participa del seminario del tema. Lee los apuntes del tema. Practica: Resuelve los ejercicios con la orientación del profesor. Presenta la solución de los ejercicios propuestos. Resuelve una práctica calificada sobre los ejercicios propuestos. Contenidos Actitudinales Asiste puntualmente a todas las clases. Participa de forma espontánea en la solución de ejercicios. Muestra responsabilidad en la presentación de la solución de los ejercicios propuestos UNIDAD 5: TRADUCCION DIRIGIDA POR LA SINTAXIS Capacidades a desarrollarse en la Unidad de Aprendizaje: 5.1 RECONOCE la traducción dirigida por la sintaxis, el código intermedio. Programación de contenidos o saberes: N° de semana 14 15 Contenidos Conceptuales Traducción dirigida por la sintaxis. Código Intermedio. Clases de códigos intermedios. Notación infija, postfija, código de 3 direcciones. Código de dos direcciones. Código de tres direcciones. Contenidos Procedimentales Teoría: Participa del seminario del tema. Lee los apuntes del tema. Practica: Resuelve los ejercicios con la orientación del profesor. Presenta la solución de los ejercicios propuestos. Resuelve una práctica calificada sobre los ejercicios propuestos. Contenidos Actitudinales Asiste puntualmente a todas las clases. Participa de forma espontánea en la solución de ejercicios. Muestra responsabilidad en la presentación de la solución de los ejercicios propuestos UNIDAD X : EVALUACIÓN DEL APRENDIZAJE – EXAMEN X.1 RECONOCE el nivel de logro alcanzado durante el proceso de enseñanza – aprendizaje, en función de las unidades trabajadas. N° de semana TEMARIO 16 EVALUACION FINAL VI. ESTRATEGIAS METODOLÓGICAS Las experiencias de aprendizaje se desarrollarán orientadas por los siguientes métodos activos: a) Conferencia, para generar el conflicto cognitivo, la inducción, para apoyar el proceso de construcción del aprendizaje o concluir los temas tratados en clase. b) Talleres para la solución de ejercicios propuestos y desarrollo de problemas. c) Estudio de casos de aplicación de los fundamentos teóricos. VII. MATERIALES EDUCATIVOS Y OTROS RECURSOS DIDÁCTICOS: Materiales educativos interactivos Bibliografía básica, complementaria y virtual. Apuntes del curso y Guía de Ejercicios. Enunciados de Problemas. Materiales educativos para la exposición Aulas. Pizarra, plumones y mota. Computador, proyector multimedia. Presentaciones multimedia. VIII. TÉCNICAS, INSTRUMENTOS E INDICADORES DE EVALUACIÓN: Capac. Indicador Técnica Instrumento 1.1 Describe las fases de un compilador. Describe los aspectos formales. 1.2 Escribe lenguajes formales sencillos Usando gramática formal. Intervención oral. 2.1 Evalúa expresiones regulares. Escribe expresiones regulares para representar patrones léxicos. Describe el lenguaje formal que representa una expresión regular. Identifica los elementos de un autómataFinito. Determina el tipo de Autómata Finito. Evalúa cadenas con Autómatas Finitos. ConstruyeAutómatasFinitos para reconocer lenguajes regulares. Describe el lenguaje formal que reconoceun Autómata Finito dado. Identifica los elementos de una Gramática. Determina el tipo de una Gramática dada. Analiza cadenas con Gramáticas Construye Gramáticas Libres de contextopara representar lenguajes sencillos. Describe el lenguaje formal que generauna Gramática dada. Determina los tokens que debe reconocerel Analizador Léxico para un lenguaje. Formaliza lospatronesdelos tokens mediante expresiones regulares. ConstruyeelAutómata Finito del Analizador Léxico. Evalúa porciones de código fuente con el Analizador Léxico construido. Transforma una Gramática para realizar análisis sintáctico descendente. Construye el Árbol de análisis sintácticosdescendente. Construye el árbol de análisis sintácticoascendente. Identifica los tipos de atributos asociados a los símbolos de una gramática atribuida. Determina el tipo de gramática atribuida. Diseñagramáticas atribuidas para solucionar problemas. Evalúa cadenas con gramáticas atribuidas. Determina la información que almacenara la Tabla de Símbolos para un lenguaje. Evaluación escrita. 2.2 2.3 2.4 2.5 3.1 3.2 4.1 4.2 Registro de intervención oral. Solución de Ejercicios. Análisis de Productos. Practica Calificada. Observación Sistemática. Prueba objetiva. Ficha de observación con escala de Calificación. Trabajo de Investigación. 4.3 4.4 Muestraelcontenidode la Tabla de Símbolosparauna posición de un programa. Determinar las expresiones de tipos paraun lenguaje. DefineelSistema deTipos para un lenguaje. Especifica el Comprobador de Tipos paraun lenguaje. Evalúa cadenas con un Comprobador de tipos. NORMATIVIDAD: Las calificaciones se aplicarán de acuerdo al sistema vigesimal (0-20) para verificar el nivel de rendimiento; además, se hará uso de escalas valorativas para certificar el cambio y desarrollo de actitudes en el alumno así como el dominio de procedimientos. La información y el análisis de los resultados de los exámenes se realizarán en la sesión posterior-inmediata al desarrollo del examen. Para el promedio final la fracción igual o mayor a 0.5 favorece al estudiante. El alumno será promocionado si: Asiste al 70 % de las clases planificadas, el 30% de inasistencias lo coloca en condición. Cumple con la totalidad de trabajos y tareas asignadas. Demuestra el logro de las capacidades planificadas por cada unidad. Demuestra las actitudes básicas y actitudes altruistas de respeto, autovaloración y predisposición para asumir cada tarea individual o grupal. Alcanza nota promocional mínima de 11 de acuerdo a los parámetros y ponderaciones establecidos. VIII. EVALUACIÓN Tipo de Calificación: B Promedio Final: (3 PromParciales + 3 PromPracticas + 1 EvalPermanente)/7 VII. BIBLIOGRAFÍA DEL CURSO - Bibliografía básica. 1. AHO, Alfred V. : Compiladores. Principios, Técnicas y Herramientas. Addison Wesley Iberoamericana, 1995. - Bibliografía complementaria 2. SANCHIS LLORCA, F. J.: Compiladores, Teoría y Construcción, Paraninfo , 1990. 3. SANCHIS DUEÑAS: Compiladores e Intérpretes, un enfoque pragmático. Díaz de Santos, 1990.