Syllabus
SCD-1016 LENGUAJES Y AUTOMATAS II
MIM. CARLOS OMAR CHAB LARA
cochab@itescam.edu.mx
Semestre | Horas Teoría | Horas Práctica | Créditos | Clasificación |
7 | 2 | 3 | 5 | Ingeniería Aplicada |
Prerrequisitos |
El alumno debe poseer cierto “conocimiento orientado a las ciencias computacionales” Dominio de los fundamentos de POO además de estructuras de datos y matemáticas discretas. Es útil tener un conocimiento sobre varios lenguajes de programación |
Competencias | Atributos de Ingeniería |
Árboles de expresiones | Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería | Acciones semánticas de un analizador sintáctico | Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas | Generación de la tabla de símbolo y tabla de direcciones | Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas | Manejo de errores semánticos. | Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería | Pila semántica en un analizador sintáctico | Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas | Esquema de traducción | Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería | Comprobaciones de tipos en expresiones | Desarrollar y conducir una experimentación adecuada; analizar e interpretar datos y utilizar el juicio ingenieril para establecer conclusiones | Notaciones | Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas | Representaciones de código.Intermedio | Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería | Esquema de generación | Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas | Tipos de optimización | Reconocer la necesidad permanente de conocimiento adicional y tener la habilidad para localizar, evaluar, integrar y aplicar este conocimiento adecuadamente | Registros | Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería | Lenguaje ensamblador. | Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería | Lenguaje máquina | Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería | Administración de memoria | Desarrollar y conducir una experimentación adecuada; analizar e interpretar datos y utilizar el juicio ingenieril para establecer conclusiones |
Normatividad |
El alumno podrá tener un retraso a la clase con una tolerancia de 15 minutos después del inició de la clase. El alumno deberá participar en todas las actividades escolares que se requieran. El alumno tendrá que justificar sus faltas ante la dirección académica. Cumplir con todos los ejercicios en clase y extraclase. Plan contingencia COVID-19 Elaborar un calendario de actividades quincenal (deberá ser publicado para su correcto seguimiento) |
Materiales |
Bibliografía disponible en el Itescam | |||||
Título |
Autor |
Editorial |
Edición/Año |
Ejemplares |
|
Diseño de compiladores modernos / |
Grune, Dick |
McGraw-Hill, |
2007. |
2 |
- |
Compiladores, teoría e implementación / |
Ruíz Catalán, Jacinto. |
Alfaomega, |
2010. |
3 |
- |
Compiladores : principios, técnicas y herramientas / |
Aho, Alfred V. |
Pearson educación, |
2a. / 2008. |
3 |
- |
Compiladores : principios, técnicas y herramientas / |
Aho, Alfred V. |
Pearson educación, |
2a. / 2008. |
3 |
- |
Parámetros de Examen | ||
PARCIAL 1 | De la actividad 1.1.1 a la actividad 1.7.1 | |
PARCIAL 2 | De la actividad 2.1.1 a la actividad 4.4.1 |
Contenido (Unidad / Competencia / Actividad / Material de Aprendizaje) | |
1. Análisis semántico.
1.1. Árboles de expresiones 1.1.1. Árbol Sintáctico ![]() ![]() ![]() ![]() 1.2. Acciones semánticas de un analizador sintáctico 1.2.1. Acciones semánticas ![]() ![]() 1.3. Comprobaciones de tipos en expresiones 1.3.1. Comprobación de Tipos ![]() ![]() ![]() 1.4. Pila semántica en un analizador sintáctico 1.4.1. Pilas semanticas ![]() ![]() 1.5. Esquema de traducción 1.5.1. Traducción orientada a la sintaxis ![]() ![]() 1.6. Generación de la tabla de símbolo y tabla de direcciones 1.6.1. Tabla de símbolos ![]() 1.7. Manejo de errores semánticos. 1.7.1. Errores sintácticos ![]() |
2. Generación de código intermedio
2.1. Notaciones 2.1.1. Prefija ![]() 2.1.2. Infija ![]() 2.1.3. Postfija ![]() 2.2. Representaciones de código.Intermedio 2.2.1. Notación Polaca ![]() 2.2.2. Código P. ![]() ![]() 2.2.3. Triplos ![]() ![]() 2.2.4. Cuádruplos ![]() 2.3. Esquema de generación 2.3.1. Variables y constantes. ![]() 2.3.2. Expresiones ![]() 2.3.3. Instrucción de asignación ![]() 2.3.4. Instrucciones de control ![]() 2.3.5. Funciones ![]() 2.3.6. Estructuras ![]() |
3. Optimización
3.1. Tipos de optimización 3.1.1. Locales 3.1.2. Ciclos 3.1.3. Globales 3.1.4. De mirilla |
4. Generación de código objeto
4.1. Registros 4.1.1. Registros ![]() 4.2. Lenguaje ensamblador. 4.2.1. Lenguaje ensamblados ![]() 4.3. Lenguaje máquina 4.3.1. Lenguaje maquina ![]() 4.4. Administración de memoria 4.4.1. Gestion de la memoria ![]() |
Prácticas de Laboratorio (20232024P) |
Fecha |
Hora |
Grupo |
Aula |
Práctica |
Descripción |
Cronogramas (20232024P) | |||
Grupo | Actividad | Fecha | Carrera |
Temas para Segunda Reevaluación |