Está en la página 1de 12

FORMATO Versión: 0

Fecha emisión: 12/septiembre/2018


INSTRUMENTACIÓN DIDÁCTICA Pagina: 1 de 12

Nombre de la asignatura: LENGUAJES Y AUTÓMATAS 2

Carrera: INGENIERÍA EN SISTEMAS COMPUTACIONALES


Clave de la asignatura: SCD-1016
Horas teoría-Horas práctica-Créditos: 2-3-5
Periodo: Marzo a Julio 2021

1. Caracterización de la asignatura
En esta asignatura se debe desarrollar el análisis semántico, la generación de código, la optimización y la generación del código objeto para
obtener el funcionamiento de un compilador.

También se busca proveer al estudiante de herramientas, conocimientos y habilidades necesarias para desarrollar un compilador con base
en los conocimientos previos de la asignatura Lenguajes y Autómatas I. La aportación de esta asignatura es relevante en el ámbito del
desarrollo de software de sistemas.

Es indispensable distinguir que la carrera de Ingeniería en Sistemas Computacionales se basa, no sólo en el desarrollo de software
comercial y administrativo, sino también en el desarrollo de software científico y para el desarrollo tecnológico. Esta asignatura se ubica en
la segunda categoría y es indispensable desarrollar software en estos campos para preparar a los egresados y tengan la posibilidad de
cursar posgrados de alto nivel.

La asignatura trata de concretar un traductor iniciado en la asignatura previa para que el estudiante comprenda que es capaz, mediante
técnicas bien definidas, de crear su propio lenguaje de programación.

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


Implementa aplicaciones computacionales para solucionar problemas de diversos contextos, integrando diferentes tecnologías,
plataformas o dispositivos.
Diseña, desarrolla y aplica modelos computacionales para solucionar problemas, mediante la selección y uso de herramientas
matemáticas.
Diseña e implementa interfaces para la automatización de sistemas de hardware y desarrollo del software asociado.
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 2 de 12

Intención didáctica.
La asignatura consta de cuatro bloques estructurados y definidos que abarcan la última etapa de la fase de análisis y síntesis. Al término del
semestre se debe obtener un compilador o traductor completo, funcionando de acuerdo a ciertas restricciones y requisitos.

La primera unidad se centra totalmente en el analizador semántico, por lo que el analizador sintáctico debió ser concluido en la asignatura
de lenguajes y autómatas I, ya que servirá de base en esta unidad.

En la segunda unidad se analizan las técnicas para generar código intermedio, para incluirse en su proyecto.

La tercera unidad se centra en la optimización del código. Es importante hacer notar que de esta fase depende la buena y eficiente
ejecución del código objeto.

En el último bloque se aborda el tema de la generación de código objeto. Como paso final, es importante que el código resultante sea
eficiente y pueda correr directamente sobre la computadora en lenguaje ensamblador o basándose en microinstrucciones.

2. Objetivo(s) general(es) del curso. (Competencias específicas a desarrollar)

Implementa un compilador para un lenguaje específico considerando las etapas del mismo.
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 3 de 12

3. Análisis por unidad

Unidad: 1 Tema: Análisis semántico

Competencia específica de la unidad Criterios de evaluación de la Unidad


• Diseña mediante el uso de reglas semánticas dirigidas por 1. Examen Diagnóstico 0
sintaxis, un analizador semántico para un compilador. Instrumento: resolver examen diagnóstico en la
plataforma
2. Ejercicios de errores semánticos 10
Instrumento: resolver ejercicios
3. Mapa Conceptual Construcción de un
compilador 10
Instrumento: elaborar el mapa en mindmanager
4. Presentación en Prezi de tipos de datos 20
Instrumento: realizar una presentación en Prezi
5. Ejercicios de conversión de tipos 10
Instrumento: resolver ejercicios
6. Programa para generar Tabla de símbolos y 30
direcciones
Instrumento: elaborar un programa en lenguaje de
alto nivel
20
7. Cuestionario de Evaluación unidad 1
Instrumento: Realizar la evaluación de la unidad en la
plataforma

Horas
Desarrollo de competencias
Actividades de enseñanza Actividades de aprendizaje teórico-
genéricas
prácticas
APERTURA: APERTURA: Competencias Instrumentales
• Diseñar, aplicar e interpretar las • Resolver examen diagnóstico para • Capacidad de análisis y síntesis 2 hrs
evaluaciones diagnósticas de los saber el nivel de dominio de • Conocimientos básicos de la carrera
estudiantes. conocimientos previos. • Comunicación oral y escrita
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 4 de 12

DESARROLLO: DESARROLLO: • Toma de decisiones.


• Diseñar ejercicios sobre errores • Detectar errores semánticos. • Conocimiento de una segunda 2 hrs
semánticos lengua
• Diseñar y seleccionar información
sobre la construcción de un analizador • Habilidad para buscar y analizar 2 hrs
• Solicitar la elaboración de un mapa
conceptual sobre el tema de información proveniente de fuentes
semántico.
construcción de un compilador diversas
• Reconocer el manejo de tipos en las • Plantear soluciones de problemas 2 hrs
• Solicitar la elaboración de una expresiones y el uso de operadores. • Habilidades básicas de manejo de la
presentación sobre la lectura reflexiva Computadora
• Establecer las reglas para la 2 hrs
de tipos de datos en expresiones y
conversión de tipos (casting) en
uso de operadores Competencias interpersonales
expresiones.
• Diseñar ejercicios sobre conversión • Trabajo en equipo
• Agregar acciones semánticas a la • Habilidades interpersonales 2 hrs
de tipos
estructura de la gramática. • Compromiso ético
• Manipular la tabla de conversión de • Capacidad de trabajo en un equipo 2 hrs
símbolos y de errores y direcciones. Interdisciplinario
Competencias sistémicas
• Integrar equipos de trabajo para la • Capacidad de aplicar los
construcción de un analizador 3 hrs
conocimientos en la práctica
semántico. • Habilidades de investigación
• Capacidad de aprender
• Capacidad de adaptarse a nuevas
situaciones
• Capacidad de generar nuevas ideas
(creatividad)
• Liderazgo
• Capacidad para diseñar y gestionar
proyectos
• Preocupación por la calidad
• Búsqueda del logro
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 5 de 12

CIERRE: CIERRE: 3 hrs


• Elaborar un instrumento de • Resolver evaluación estructurada de
evaluación para determinar el la unidad en la plataforma Moodle del
dominio de conocimientos de los Tecnológico
conceptos básicos.

Fuentes de información Apoyos didácticos:


Aho, A. V., Sethi, R., & Ullman, J. D. (1998). Compiladores: principios, técnicas y • Pintarrón y pintagis
herramientas: Addison-Wesley Iberoamericana. • Cañón y equipo de computo
Alfonseca Cubero, E. (2007). Teoría de autómatas y lenguajes formales: McGraw-Hill • Libros, revistas y artículos (impresos o
Interamericana de España. digitales)
Brookshear, J. G. (1993). Teoría de la computación: lenguajes formales, autómatas y • Internet, Google, scribd, Moodle, otros.
conplejidad. • Documentos de Google Académico
Carrasco Jiménez, R. C., Calera Rubio, J., & Forcada Zubizarreta, M. L. (2000). Teoría de • Paquetería de Microsoft Office (Word, Power
lenguajes, gramáticas y autómatas para informáticos: Universidad de Alicante. point, Visio) y Adobe Acrobat Writer and
Chesñevar, C. I., Maguitman, A. G., González, M. P., & Cobo, M. L. (2008). Tecnología Reader.
Informática en un curso de Lenguajes Formales y Teoría de Autómatas: un enfoque • Conceptdraw, mindmanager y cmaptools.
constructivista.
• Real Player, Windows Media
Contreras, H. (2005). Teoría de la Computación para Ingeniería de Sistemas: un enfoque
• Endnote
práctico.
Kelley, D., Aguilar, L. J., & Platas, M. L. D. (1995). Teoría de autómatas y lenguajes • Libreta, lápiz, borrador y sacapuntas
formales (Vol. 22): Prentice Hall.
Malpica Velasco, J. A. (1998). Introducción a la teoría de autómatas: Universidad de Alcalá
de Henares.
Navarrete Sánchez, I., & Martínez Bejar, R. (2000). Teoría de autómatas y lenguajes
formales.
Ramos Jiménez, G. (2003). Apuntes de" Teoría de autómatas y lenguajes formales I".
Sande González, F. (2001). Prácticas de teoría de autómatas y lenguajes formales.
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 6 de 12

Unidad: 2 Tema: Generación de código intermedio

Competencia específica de la unidad Criterios de evaluación de la Unidad


• Diseña las reglas para traducir el código fuente a un 1. Ejercicios tipos de notación 20
código intermedio. Instrumento: realizar ejercicios de notación
2. Ejercicios código intermedio 15
Instrumento: realizar ejercicios en la plataforma virtual
3. Ejercicios manejo de tipos de expresiones
15
Instrumento: realizar ejercicios en la plataforma virtual
4. Ejercicios representar un lenguaje de alto nivel
Instrumento: realizar ejercicios en la plataforma virtual 20
5. Programa elaborado en lenguaje de alto nivel.
Instrumento: elaborar un programa que aplique las 30
acciones construidas a la gramática del lenguaje
prototipo.

Horas
Actividades de enseñanza Actividades de aprendizaje Desarrollo de competencias genéricas teórico-
prácticas
APERTURA: APERTURA: Competencias Instrumentales
• Construir ejercicios sobre notaciones • Aplicar los tipos de notación para la • Capacidad de análisis y síntesis 2 hrs
infija, prefija y posfija conversión de expresiones: Infija, • Conocimientos básicos de la carrera
prefija y posfija. • Comunicación oral y escrita
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 7 de 12

DESARROLLO: DESARROLLO: • Toma de decisiones.


• Diseña ejercicios sobre expresiones • Representar expresiones mediante • Conocimiento de una segunda lengua 3 hrs
de código intermedio el código intermedio. • Habilidad para buscar y analizar
• Construye y elige ejercicios sobre el • Reconocer el manejo de tipos en las información proveniente de fuentes
diversas 3 hrs
manejo de tipos de expresiones y uso expresiones y el uso de operadores.
de operadores • Plantear soluciones de problemas
• Desarrollar las acciones que • Toma de decisiones
• Define ejercicios sobre la estructura representen la estructura de un • Habilidades básicas de manejo de la 3 hrs
de un lenguaje de programación lenguaje de programación de alto Computadora
nivel en un código intermedio. Competencias interpersonales
• Aplicar las acciones construidas a la • Trabajo en equipo
3 hrs
gramática del lenguaje prototipo. • Habilidades interpersonales
• Capacidad de trabajo en un equipo
• Integrar equipos de trabajo para la Interdisciplinario
3 hrs
generación de un código intermedio. Competencias sistémicas
• Capacidad de aplicar los
conocimientos en la práctica
• Habilidades de investigación
• Capacidad de aprender
• Capacidad de generar nuevas ideas
(creatividad)
CIERRE: CIERRE:
• Resolver evaluación estructurada de • Elaborar un instrumento de 3 hrs
la unidad en la plataforma Moodle del evaluación para determinar el
Tecnológico dominio de conocimientos de los
conceptos básicos.
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 8 de 12

Fuentes de información Apoyos didácticos:


Aho, A. V., Sethi, R., & Ullman, J. D. (1998). Compiladores: principios, técnicas y • Pintarrón y pintagis
herramientas: Addison-Wesley Iberoamericana. • Cañón y equipo de computo
Alfonseca Cubero, E. (2007). Teoría de autómatas y lenguajes formales: McGraw-Hill • Libros, revistas y artículos (impresos o
Interamericana de España. digitales)
Contreras, H. (2005). Teoría de la Computación para Ingeniería de Sistemas: un enfoque • Internet, Google, scribd, Moodle, otros.
práctico. • Documentos de Google Académico
Kelley, D., Aguilar, L. J., & Platas, M. L. D. (1995). Teoría de autómatas y lenguajes • Paquetería de Microsoft Office (Word, Power
formales (Vol. 22): Prentice Hall. point, Visio) y Adobe Acrobat Writer and
Navarrete Sánchez, I., & Martínez Bejar, R. (2000). Teoría de autómatas y lenguajes Reader.
formales. • Endnote
Ramos Jiménez, G. (2003). Apuntes de" Teoría de autómatas y lenguajes formales I".
• Libreta, lápiz, borrador y sacapuntas
Sande González, F. (2001). Prácticas de teoría de autómatas y lenguajes formales.
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 9 de 12

Unidad: 3 Tema: Optimización

Competencia específica de la unidad Criterios de evaluación de la Unidad


• Conoce e identifica los diferentes tipos de optimización que 1. Ejercicios de optimización y folding 10
permita eficientar el código intermedio. 2. Ejercicio Optimización de código 10
3. Ejercicio Tipos y Costos 20
4. Ejercicio Gestión memoria en tiempo 20
ejecución
5. Ejercicio Estrategias de optimización 20
6. Cuestionario de evaluación unidad 3 20

Horas
Desarrollo de competencias
Actividades de enseñanza Actividades de aprendizaje teórico-
genéricas
prácticas
APERTURA: APERTURA: Competencias Instrumentales
• Diseña ejercicios sobre técnicas para• Aplicar las técnicas para la • Capacidad de análisis y síntesis 3hrs
la optimización del código intermedio optimización del código intermedio • Comunicación oral y escrita
generado. • Plantear soluciones de problemas
DESARROLLO: DESARROLLO: • Toma de decisiones
• Define ejercicios para nociones • Tener nociones algebraicas para Competencias interpersonales 4 hrs
algebraicas en un ciclo anidado estimar el número de veces que se • Trabajo en equipo
• Elabora ejercicios para que el
realiza una instrucción dentro de un • Habilidades interpersonales
estudiante identifique los recursos
ciclo o ciclos anidadas. • Capacidad de trabajo en un equipo
Interdisciplinario 3 hrs
que se consumen al invocar una • Conocer que recursos se consumen
función en invocación a funciones y Competencias sistémicas
expresiones simples. • Capacidad de aplicar los
• Diseña un cuestionario para técnicas conocimientos en la práctica
de optimización de código • Estudiar nuevas técnicas para la 3 hrs
optimización de código, sobre todo
para aquellos lenguajes que
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 10 de 12

requieren de una máquina virtual para


su ejecución sobre multiplataformas.
3 hrs
• Conocer los criterios de tiempo de
ejecución o extensión de código
generado.
• Analizar códigos intermedios
existentes y proponer algunas
mejoras.
CIERRE: CIERRE: 4 hrs
• Construye un cuestionario para que • Resuelve el cuestionario final de la
el estudiante resuelva la evaluación unidad
de la unidad

Fuentes de información Apoyos didácticos:


Aho, A. V., Sethi, R., & Ullman, J. D. (1998). Compiladores: principios, técnicas y • Pintarrón y pintagis
herramientas: Addison-Wesley Iberoamericana. • Cañón y equipo de computo
Alfonseca Cubero, E. (2007). Teoría de autómatas y lenguajes formales: McGraw-Hill • Libros, revistas y artículos (impresos o
Interamericana de España. digitales)
Brookshear, J. G. (1993). Teoría de la computación: lenguajes formales, autómatas y • Internet, Google, scribd, Moodle, otros.
conplejidad. • Documentos de Google Académico
Carrasco Jiménez, R. C., Calera Rubio, J., & Forcada Zubizarreta, M. L. (2000). Teoría de • Paquetería de Microsoft Office (Word, Power
lenguajes, gramáticas y autómatas para informáticos: Universidad de Alicante. point, Visio) y Adobe Acrobat Writer and
Chesñevar, C. I., Maguitman, A. G., González, M. P., & Cobo, M. L. (2008). Tecnología Reader.
Navarrete Sánchez, I., & Martínez Bejar, R. (2000). Teoría de autómatas y lenguajes • Real Player, Windows Media
formales.
• Endnote
Ramos Jiménez, G. (2003). Apuntes de" Teoría de autómatas y lenguajes formales I".
• Libreta, lápiz, borrador y sacapuntas
Rocha, J. (2005). Autómatas de Pila y Máquinas de Turing Estructurados. Departamento
Ciencias Matemáticas e Informática, Universidad de las Islas Baleares.
Sande González, F. (2001). Prácticas de teoría de autómatas y lenguajes formales.
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 11 de 12

Unidad: 4 Tema: Generación de código objeto

Competencia específica de la unidad Criterios de evaluación de la Unidad


• Utiliza un lenguaje de bajo nivel para traducir 1. Ejercicio Generación código objeto 10
el código construido a lenguaje máquina para 2. Ejercicio Renacimiento de LP 10
su ejecución. 3. Ejercicio Historia de LP 10
4. Ejercicio de Lenguajes de Programación 30
5. Proyecto de la unidad 4 40

Horas
Desarrollo de competencias
Actividades de enseñanza Actividades de aprendizaje teórico-
genéricas
prácticas
APERTURA: APERTURA: Competencias Instrumentales
• Diseña ejercicio automatizado sobre • Conocer la arquitectura de los • Capacidad de análisis y síntesis 3 hrs
la arquitectura de los microprocesadores intel y • Conocimiento de una segunda
microprocesadores Intel y compatibles. lengua
compatibles • Plantear soluciones de problemas
DESARROLLO: DESARROLLO: Competencias interpersonales
• Elabora ejercicio para que el • Conocer la estructura y • Trabajo en equipo 3 hrs
estudiante conozca el funcionamiento funcionamiento del lenguaje • Habilidades interpersonales
del lenguaje ensamblador ensamblador. • Compromiso ético
• Capacidad de trabajo en un equipo 3 hrs
• Diseña ejercicios para identificar las • Conocer las características Interdisciplinario
características del lenguaje máquina principales del lenguaje maquina a fin Competencias sistémicas 4 hrs
de llevar un código intermedio y este • Capacidad de
• Elabora ejercicio automatizado para aplicar los
pueda ser reconocido por el hardware. conocimientos en la práctica 4 hrs
que el estudiante conozca la técnica
de administración de memoria • Conocer las técnicas de • Habilidades de investigación
administración de memoria para el • Capacidad de aprender
FORMATO Versión: 0
Fecha emisión: 12/septiembre/2018
INSTRUMENTACIÓN DIDÁCTICA Pagina: 12 de 12

almacenamiento de un programa en
momento de ejecución.

CIERRE: CIERRE:
• Propone la experimentación con • Experimentar con simuladores de 3 hrs
simuladores de arquitectura de arquitectura de microprocesadores.
microprocesadores

Fuentes de información Apoyos didácticos:


Aho, A. V., Sethi, R., & Ullman, J. D. (1998). Compiladores: principios, técnicas y • Pintarrón y pintagis
herramientas: Addison-Wesley Iberoamericana. • Cañón y equipo de computo
Alfonseca Cubero, E. (2007). Teoría de autómatas y lenguajes formales: McGraw-Hill • Libros, revistas y artículos (impresos o
Interamericana de España. digitales)
Carrasco Jiménez, R. C., Calera Rubio, J., & Forcada Zubizarreta, M. L. (2000). Teoría de • Internet, Google, scribd, Moodle, otros.
lenguajes, gramáticas y autómatas para informáticos: Universidad de Alicante. • Documentos de Google Académico
Ramos Jiménez, G. (2003). Apuntes de" Teoría de autómatas y lenguajes formales I". • Paquetería de Microsoft Office (Word, Power
Rocha, J. (2005). Autómatas de Pila y Máquinas de Turing Estructurados. Departamento point, Visio) y Adobe Acrobat Writer and
Ciencias Matemáticas e Informática, Universidad de las Islas Baleares. Reader.
Sande González, F. (2001). Prácticas de teoría de autómatas y lenguajes formales. • Libreta, lápiz, borrador y sacapuntas

Fecha de 19 de febrero de 2021


elaboración:

MTI. ROSA IMELDA GARCIA CHI ME. HORACIO GARCÍA ALDAPE


Nombre y Firma del Docente Vo. Bo. Jefe del Departamento de Sistemas y Computación

También podría gustarte