Campos Fecha de elaboración: 28 de Mayo de 2010 Fecha de última actualización:

Documentos relacionados
PROGRAMA DE LABORATORIO SECCIÓN: ÁREA A LA QUE PERTENECE: POS-REQUISITO: AUXILIAR:

F1131 Fundamentos de sistemas operativos 1/12

Jesús Manuel Carrera Velueta José Juan Almeida García Fecha de elaboración: Mayo 6 de 2010 Fecha de última actualización:

Toda copia en PAPEL es un "Documento No Controlado" a excepción del original.

PROGRAMA INSTRUCCIONAL AUTOMATAS Y LENGUAJES FORMALES

General. Herramientas de computación. Programa Educativo: PROGRAMA DE ESTUDIO. Área de Formación :

F1147 Desarrollo de emprendedores 1/10

Carrera: SCM Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Texto: Hopcroft, J. E., Motwani, R., Ullman, J.D., Introduction to Automata Theory, Languajes, and Computation. 3rd Edition. Addison Wesley, 2007.

Dr. Víctor Castellanos Vargas MC. Cristina Campos Jiménez Fecha de elaboración: Agosto 2004 Fecha de última actualización: Julio 2010

Programa de Asignatura Programación Visual I

Santana Martínez Hernández Fecha de elaboración: 12 de mayo de 2010 Fecha de última actualización: 12 de mayo de 2010

Introducción a la Ingeniería Básicas de Ingeniería

Programa de estudios por competencias Métodos Matemáticos II. Fecha elaboración/modificación: Julio 2015 Clave de la asignatura:

Universidad Autónoma del Estado de México Licenciatura en Matemáticas Programa de Estudios: Programación Lineal

ALGORITMOS, ESTRUCTURAS Y PROGRAMACION

UNIVERSIDAD NACIONAL EXPERIMENTAL DE GUAYANA VICERRECTORADO ACADÉMICO COORDINACION DE PRE-GRADO PROYECTO DE CARRERA DE INGENIERIA INDUSTRIAL

Universidad Autónoma del Estado de México Licenciatura en Ingeniería en Sistemas Energéticos Sustentables

UNIVERSIDAD DE GUADALAJARA

Nombre de la asignatura: Diseño Estructurado de Algoritmos. Carrera: Ingeniería en Sistemas Computacionales. Clave de la asignatura: SCB-9316

DEPARTAMENTO: Ingeniería e Investigaciones Tecnológicas

Programa de estudios por competencias Seminario de solución de problemas de Ingeniería de Software I

Cátedra de Sintaxis y Semántica de Lenguajes

Carácter Modalidad Horas de estudio semestral (16 semanas)

ESCUELA: UNIVERSIDAD DEL ISTMO

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIERÍA PROYECTO CURRICULAR DE INGENIERÍA INDUSTRIAL

Carrera: SCC Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES ACATLÁN LICENCIATURA EN MATEMÁTICAS APLICADAS Y COMPUTACIÓN

Programa de estudios por competencias Seminario Resolución de Problemas de Métodos Matemáticos I

Nombre de la asignatura: Algoritmos y Lenguajes de programación.

DIPLOMADO. Evaluación de la Calidad de la práctica docente para la implementación del Nuevo Modelo Educativo en Escuelas de Ingeniería del I.P.N.

Operaciones algebraicas elementales (Unidad I del curso Matemáticas Básicas).

Nombre de la asignatura: LENGUAJE DE PROGRAMACIÓN PARA INGENIERÍA. Básico ( ) Profesional ( X ) Especializado ( ) Práctica ( )

: Algorítmica y Estructura de Datos I

Universidad Centroccidental Lisandro Alvarado. Decanato de Ciencias y Tecnología Departamento de Sistemas

Nombre de la asignatura: Investigación de Operaciones II. Créditos: Aportación al perfil

PONTIFICIA UNIVERSIDAD CATOLICA DEL ECUADOR FACULTAD DE INGENIERIA ESCUELA DE INGENIERIA DE SISTEMAS

ESTRUCTURAS DE DATOS

Programa de estudios por competencias Arquitectura de computadoras

Programación de Sistemas

Asignaturas antecedentes y subsecuentes

3. Desarrollar en los estudiantes habilidades en el manejo de la información contable.

PROGRAMA DE ESTUDIO. Nombre de la asignatura: MICROPROCESADORES Y MICROCONTROLADORES. Horas de Práctica

DATOS DE IDENTIFICACIÓN CURSO

PROGRAMA DE MATERIA. El alumno continuara la secuencia de fases ya establecidas en el curso previo, particularmente se enfocara en:

Universidad Autónoma de Nayarit Área Económico-Administrativa Licenciatura en Economía

INSTITUTO TECNOLÓGICO SUPERIOR DEL SUR DEL ESTADO DE YUCATAN SUBDIRECCIÓN ACADÉMICA DEPARTAMENTO DE INGENIERÍA INDUSTRIAL

PROGRAMA INSTRUCCIONAL

La aportación de la asignatura al perfil del egresado será específicamente la siguiente:

Dirección de Desarrollo Curricular Secretaría Académica

UNIVERSIDAD DE GUADALAJARA

Fecha de elaboración: Mayo del 2010 Fecha de última actualización: Seriación implícita Metodología de Investigación, Bioestadística, Epidemiología.

1. IDENTIFICACIÓN DEL CURSO Nombre de la materia Comunicación y Tecnologías de la Información

Unidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas

Universidad Autónoma del Estado de México Licenciatura en Bioingeniería Médica Programa de estudio de la unidad de aprendizaje:

Estructura de datos. Carrera: SCC Participantes

SECUENCIA DIDÁCTICA. Módulo IV

EVALUACIÓN DE PROYECTOS DE INGENIERÍA

Asignatura. Laboratorio de Lenguaje Multimedia. Academia: Producción audiovisual, multimedia y paquetes computacionales

Carrera: INB Participantes. Representante de las academias de ingeniería industrial de. Academias Ingeniería Industrial.

DISEÑO CURRICULAR COMPUTACIÓN I

2007/ PROGRAMACIÓN. Tipo: TRO Curso: 1 Semestre: AB CREDITOS Totales TA TS AT AP PA OBJETIVOS. 1.-Introducción.

Formato de programa de estudios para la formación y desarrollo de competencias profesionales. Ingeniería en Sistemas Computacionales

UNIVERSIDAD PEDAGÓGICA Y TECNOLÓGICA DE COLOMBIA FACULTAD DE CIENCIAS PROGRAMA DE MATEMÁTICAS PLAN DE ESTUDIOS

PROGRAMA DE ESTUDIO. Práctica ( ) Teórica ( X ) Presencial ( X ) Teórica-práctica ( ) Híbrida ( )

UNIVERSIDAD AUTÓNOMA DE CHIAPAS FACULTAD DE INGENIERÍA CAMPUS I DISEÑO DE ESTRUCTURAS DE CONCRETO

I. FUNDAMENTOS DE ARQUITECTURA

Fecha de elaboración: 14 de mayo de 2010 Fecha de última actualización: 27 de Mayo de 2010

Universidad Católica de Santiago del Estero Facultad de Matemática Aplicada Carrera de Ingeniería en Electrónica

PROGRAMA ANALÍTICO. Formato Institucional 1. Datos de identificación: Nombre de la institución y de la dependencia

Programa de estudios por competencias. Seminario de Sistemas operativos en red

Facultad de Ingeniería de Sistemas 1.5 Carrera: Ingeniería de Sistemas 1.6 Código: ISI 1.7 Nivel: Pregrado

Terminal ó. OPTATIVA Práctica Optativa

PROGRAMA ANALÍTICO DE ASIGNATURA

Carrera: IFB Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Sílabo del curso Investigación Operativa II

4. OBJETIVOS General Desarrollar capacidades en el estudiante para interpretar problemas organizacionales mediante el uso del lenguaje matemático.

SECUENCIAS FORMATIVAS YDIDACTICAS PARA FLASH 22/08/2011 M. EN E. MERCEDES GÓMEZ BETANZOS

Nombre de la asignatura: Simulación. Créditos: Aportación al perfil

UNIVERSIDAD AUTÓNOMA DE YUCATÁN FACULTAD DE MATEMÁTICAS

UNIVERSIDAD AUTÓNOMA DE SINALOA ESCUELA DE ADMINISTRACIÓN AGROPECUARIA Y DESARROLLO RURAL FORMATO DE DISEÑO INSTRUCCIONAL LIC.

UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA SUR. Ingeniería Aplicada TEÓRICA SERIACIÓN 100% DE OPTATIVAS DISCIPLINARIAS

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLÁN PLAN DE ESTUDIOS DE LA LICENCIATURA EN QUÍMICA INDUSTRIAL

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES TRABAJO DE PRÁCTICAS. Convocatoria de junio de 2013

PROGRAMA ANALÍTICO DE ASIGNATURA

UNIVERSIDAD DEL VALLE DE MÉXICO PROGRAMA DE ESTUDIO DE LICENCIATURA PRAXIS MES XXI

Universidad Autónoma del Estado de México Licenciatura en Ingeniería de Software Programa de estudio de la Unidad de Aprendizaje:

Dirección de Desarrollo Curricular Secretaría Académica

Análisis Exploratorio de Datos 1231X (B.O.E. del 19-julio-2000). Troncal. Obligatoria. Optativa.

Secretaría de Docencia Dirección de Estudios Profesionales

Ubicación de la asignatura. Propósito de la asignatura. Desarrollando proyectos. Asignaturas relacionadas. Una mirada hacia la optimización económica

Contador Publico CPD

TÉCNICO SUPERIOR UNIVERSITARIO EN ENERGIAS RENOVABLES ÁREA CALIDAD Y AHORRO DE ENERGÍA EN COMPETENCIAS PROFESIONALES

Asignaturas antecedentes y subsecuentes Análisis Numérico II

Facultad de Ciencias Económicas y Empresariales GRADO EN FINANZAS, BANCA Y SEGUROS CUARTO CURSO

Torruco, Rubén Jerónimo Yedra Fecha de elaboración: Mayo de 2010 Fecha de última actualización: Programación. F1101 Algoritmos 1/9

PROGRAMA DE ESTUDIO. Nombre de la asignatura: CONTROLADORES LÓGICOS PROGRAMABLES. Horas de. Práctica ( )

ASIGNATURA: ESTRUCTURA DE DATOS II

GUÍA DOCENTE PROCESADORES DE LENGUAGE

Programa de estudios por competencias Licenciatura en Administración

Transcripción:

PROGRAMA DE ESTUDIO Programa Educativo: Área de Formación : Licenciatura en Sistemas Computacionales Integral Profesional Compiladores Horas teóricas: 2 Horas prácticas: 2 Total de Horas: 4 Total de créditos: 6 Clave: F1254 Tipo : Asignatura Carácter de la Optativa asignatura Programa elaborado por: Rubén Jerónimo Yedra, Pablo Payró Campos Fecha de elaboración: 28 de Mayo de 2010 Fecha de última actualización: Seriación explícita Asignatura antecedente No Asignatura Subsecuente Seriación implícita Conocimientos previos: Sí Programar en un lenguaje de alto nivel, usar las estructuras de datos de manera apropiada, aplicar matemáticas discretas y conocer la organización de una computadora. F1254 Compiladores 1/ 10

Presentación El contenido del curso está previsto para un ciclo escolar y brinda al estudiante un panorama general y completo acerca de la teoría de compiladores y los aspectos relacionados con su diseño e implementación. La asignatura requiere la aplicación de conocimientos adquiridos en las áreas de formación general y sustantiva profesional de la Licenciatura en Sistemas Computacionales, específicamente, programación en lenguajes de alto nivel, estructuras de datos, organización de computadoras, matemáticas discretas, paradigmas de programación y, eventualmente, arquitectura de computadoras y microprocesadores. Por lo anterior, el estudiante adquirirá mayores competencias en el desarrollo de software base con la finalidad de aumentar la aplicabilidad a la computadora como herramienta de propósito general en la resolución de problemas específicos. El profesor facilitará el desarrollo de un producto final, que consiste en un prototipo de traductor, intérprete o máquina virtual, proporcionando una especificación detallada del mismo, sin ambigüedades, realista y alcanzable en un ciclo escolar, aplicando herramientas de desarrollo en las que previamente el estudiante tenga experiencias de aprendizaje y que estén disponibles en la División Académica. La asignatura de Compiladores se ubica dentro del área de formación Integral Profesional Objetivo General Conocer los aspectos teóricos-prácticos fundamentales para llevar a cabo el proceso de traducción correctamente de un programa de computadora escrito en un lenguaje de programación de alto nivel hacia un lenguaje de nivel inferior. Competencias que se desarrollarán en esta asignatura Identificar los aspectos formales fundamentales de la teoría de compiladores Adquirir los conocimientos para realizar el análisis léxico Utilizar a las gramáticas como medio de especificación formal de un lenguaje. Comprender las técnicas empleadas en la fase de análisis sintáctico F1254 Compiladores 2/ 10

Entender las técnicas utilizadas para realizar el análisis semántico y generar el código objeto. Comprender los métodos de construcción y acceso de tablas de símbolos Identificar las técnicas más usuales de manejo de memoria y recuperación de errores del compilador Competencias del perfil de egreso que apoya esta asignatura Los conocimientos adquiridos al cursar la asignatura, fortalecerán los concernientes a modelos, métodos y herramientas de ingeniería de software y paradigmas, lenguajes y entornos de programación. Así mismo, las habilidades apoyadas son: de análisis y abstracción, dirigir, coordinar y colaborar en grupos de trabajo, aplicar conocimientos en la identificación y solución eficientes a problemas y riesgos y para formular, gestionar y colaborar en proyectos, en un marco de valores y actitudes acordes a los promovidos por el programa educativo. Escenario de aprendizaje Salón de clases, Laboratorios de cómputo, Servicios bibliotecarios (físicos y virtuales). Perfil sugerido del docente El perfil ideal del docente es un profesional que tenga formación en el área de Informática o Sistemas Computacionales, preferentemente con estudios de posgrado y experiencia laboral en el desarrollo de software. Perfil alternativo del docente es aquel profesional que tenga experiencia laboral en el desarrollo de software base y/o posea curso de actualización disciplinar en las áreas de conocimientos que promueve esta asignatura. Actitudes necesarias del docente son: F1254 Compiladores 3/ 10

Capacidad para promover el trabajo colaborativo entre los alumnos Destreza y habilidad para exponer de forma clara los temas que se abordan en la asignatura Habilidad para aclarar y despejar las dudas que le surjan a los alumnos al revisar los diversos temas de compiladores Contenido Temático I Aspectos formales Identificar los aspectos formales fundamentales para el tema de los compiladores. Hrs. Estimadas 8 Temas Resultados del aprendizaje Sugerencias didácticas Estrategias y criterios de Cuadro comparativo Explicación del tema por Portafolio de evidencias que donde muestre los parte del profesor. contenga todas las elementos formales actividades que se hayan básicos de los desarrollado durante la compiladores. presente unidad. 1.1 Cadenas, alfabetos y lenguajes. 1.2 Clasificación y características de los lenguajes de programación. 1.3 Definiciones (compilador, intérprete, clasificación de los compiladores, formatos de código máquina). 1.4 Máquinas multinivel y virtuales. 1.5 Estructura básica del Resolución de ejemplos de ejercicios que aborden el o los temas revisados. F1254 Compiladores 4/ 10

compilador. II Análisis léxico y tabla de símbolos Adquirir los conocimientos para realizar el análisis léxico. Hrs. Estimadas 12 Temas 2.1. Definición del analizador léxico y sus funciones. 2.2. Expresiones y conjuntos regulares. 2.3. Máquinas de estados finitos. 2.4. Autómatas de estados finitos. 2.5. Diagrama y matriz de transiciones. 2.6. Herramientas para generar analizadores léxicos. Resultados del aprendizaje Documento de texto donde de a conocer que es un analizador léxico e identifique sus funciones. Listado de ejercicios sobre expresiones, conjuntos regulares y autómatas de estados finito. Caso práctico donde demuestre saber desarrollar un analizador léxico. Sugerencias didácticas Explicación del tema por parte del profesor. Solución de ejercicios acerca de tema por parte del profesor. Elaboración de prácticas dirigidas por el profesor Solución al caso práctico propuestos. Estrategias y criterios de Portafolio de evidencias que contenga todas las actividades que se hayan desarrollado durante la presente unidad. Solución de ejercicios en la libreta. Exposición del alumno de problemas resueltos. En equipos de trabajo formado por alumnos, desarrollar un analizador léxico. F1254 Compiladores 5/ 10

III Gramáticas Utilizar las gramáticas como medio de especificación formal de un lenguaje. Hrs. Estimadas 8 Temas Resultados del aprendizaje Sugerencias didácticas Estrategias y criterios de 3.1. Jerarquía de las Listado de ejercicios Explicación del tema y Portafolio de evidencias que gramáticas de Noam donde demuestre solución de problemas contenga todas las Chomsky. comprender las por parte del profesor. actividades que se hayan 3.2. Notaciones BNF y EBNF especificaciones formales desarrollado durante la Elaboración de conjunto 3.3. Gramáticas libres del de los lenguajes de presente unidad. de ejercicios por el contexto. programación mediante profesor. 3.4. Eliminación de la gramáticas libres de Resolución de ejercicios en recursividad izquierda. contexto. Solución de ejercicios la libreta. 3.5. Reducción, ambigüedad Caso práctico donde propuestos. y corrección. muestre su capacidad Exposición del alumno de Solución a los casos para tratar con los problemas resueltos. práctico propuestos. principales errores presentes en una gramática, así como la eliminación de la recursividad izquierda. IV Análisis sintáctico Comprender las técnicas empleadas en la fase de análisis sintáctico. Hrs. Estimadas 12 F1254 Compiladores 6/ 10

Temas 4.1. Definición del analizador sintáctico y sus funciones. 4.2. Derivaciones y árboles. 4.3. Análisis sintáctico ascendente (down-top). 4.4. Análisis sintáctico descendente recursivo (top-down). Resultados del aprendizaje Cuadro sinóptico donde de a conocer y sepa identificar que es un analizador sintáctico y sus funciones. Caso práctico donde pueda identificar las técnicas empleadas en la fase de análisis sintáctico. Caso práctico donde se tenga que aplicar técnicas empleadas en la fase de análisis sintáctico. Caso práctico donde se desarrolle un analizador sintáctico. Sugerencias didácticas Explicación del tema por parte del profesor. Solución de ejercicios acerca de tema por parte del profesor. Elaboración de prácticas dirigidas por el profesor Solución a los casos práctico propuestos. Estrategias y criterios de Portafolio de evidencias que contenga todas las actividades que se hayan desarrollado durante la presente unidad. Resolución de ejercicios en la libreta. Exposición del alumno de problemas resueltos. En equipos de trabajo formado por alumnos, desarrollar un analizador sintáctico. V Análisis semántico y generación de código Entender las técnicas utilizadas para realizar el análisis semántico y generar el código objeto. Hrs. Estimadas 12 F1254 Compiladores 7/ 10

Temas 5.1. Funciones semánticas. 5.2. Síntesis de un solo paso. 5.3. Diseño de una máquina virtual. 5.4. Representaciones intermedias. 5.5. Rutinas semánticas. 5.6. Generación de código. Resultados del aprendizaje Mapa conceptual muestre las técnicas aplicadas al análisis semántico. Formatos de representación intermedia del código. Caso práctico donde se desarrolle un generador de código. Sugerencias didácticas Explicación del tema por parte del profesor con apoyo de una antología. Cuadro comparativo de las representaciones intermedias. Elaboración de diagrama de bloques de una máquina virtual. Estrategias y criterios de Portafolio de evidencias que contenga todas las actividades que se hayan desarrollado durante la presente unidad. Resolución de ejercicios en la libreta. Exposición del alumno de problemas resueltos. Presentación oral del mapa conceptual que muestra las técnicas aplicadas al análisis semántico. F1254 Compiladores 8/ 10

VI Diccionario de símbolos, manejo de memoria y recuperación de errores Conocer los métodos de construcción y acceso de tablas de símbolos y las implicaciones al implementarlas con diferentes tipos de lenguajes de programación, así como, identificar las técnicas más usuales de manejo de memoria y recuperación de errores del compilador. Hrs. Estimadas 12 Temas Resultados del aprendizaje Sugerencias didácticas Estrategias y criterios de Documento de texto Explicación del tema por Portafolio de evidencias que donde se identifique los parte del profesor con contenga todas las métodos de construcción apoyo de una antología. actividades que se hayan y acceso de un desarrollado durante la diccionario de símbolos. presente unidad. 6.1 Introducción. 6.2 Métodos de acceso. 6.3 Lenguajes con estructura de bloques (PASCAL, C). 6.4 Lenguajes con control de amplitud (MODULA, ADA). 6.5 Manejo de las estructuras de datos. 6.6 Asignaciones estática, dinámica y mixta. 6.7 Técnicas de recuperación de errores Caso práctico donde se identifiquen los métodos de implementación de diccionarios de símbolos para traducción de lenguajes con estructura de bloques y con control de amplitud Documento de texto que describa las técnicas de recuperación de errores del proceso de traducción. Elaboración de cuestionario por el profesor. Solución al caso práctico propuestos. F1254 Compiladores 9/ 10

Bibliografía básica Aho, A., et al. (2008). Compiladores: Principios, técnicas y herramientas. 2ª ed. México: Pearson. Alfonseca, M., et al. (2006). Compiladores e intérpretes: teoría y práctica. España: Pearson Prentice Hall. Fischer, C., LeBlanc, R., Cytron, J. (2009). Crafting a compiler: Featuring Java. USA: Addison Wesley. Grune, D., et al. (2007). Diseño de compiladores modernos. Madrid, España: Mc Graw Hill. Mak, R. (2009). Writing compilers and interpreters: A software engineering aproach. 3 rd ed. USA: Wiley and Sons. Bibliografía complementaria Gálvez, S., Mora, M. (2005). Java a tope: Compiladores: Traductores y compiladores con lex/yacc, jflex/cup y javacc. España: Universidad de Málaga. Hopcroft, J., Motwani, R., Ullman, J. (2008). Introducción a la teoría de autómatas, lenguajes y computación. 3ª ed. España: Pearson. Levine, J. (2009). Flex & bison: Unix Text Processing Tools. USA: O'Reilly. Louden, K. (2004). Construcción de compiladores: Principios y práctica. México: Thompson.* *La bibliografía tiene más de cinco años, sin embargo es utilizada porque no existen ediciones actualizadas. F1254 Compiladores 10/ 10