Syllabus

SCD-1016 LENGUAJES Y AUTOMATAS II

MIM. ROGELIO ALFREDO FLORES HAAS

raflores@itescam.edu.mx

Semestre Horas Teoría Horas Práctica Créditos Clasificación
7 2 3 5 Ingeniería Aplicada

Prerrequisitos
Define, diseña y programa las fases del analizador léxico y sintáctico de un traductor o compilador para preámbulo de la construcción de un compilador.

Competencias Atributos de Ingeniería
Diseña mediante el uso de reglas semánticas dirigidas por sintaxis, un analizador semántico para un compilador.   Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas
Diseña las reglas para traducir el código fuente a un código intermedio.   Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas
Conoce e identifica los diferentes tipos de optimización que permita eficientar el código intermedio.   Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería
Utiliza un lenguaje de bajo nivel para traducir el código construido a lenguaje máquina para su ejecución.   Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas

Normatividad
El alumno deberá: 1.- Cumplir con todos los trabajos marcados en clases y extraclases. 2.- No se aceptaran trabajos documentales, programas o tareas de forma extemporánea. 3.- Participar en el salón de clases cuando se le requiera. 4.- Tener el mínimo de asistencias requerido por la subdirección académica (80%). 5.- Tener un comportamiento de disciplina dentro del salón de clases. 6.- Estar a más tardar 15 min. después de la entrada del profesor, después de lo cual no se le dejará entrar. 7.- Colaborar con su equipo en los trabajos designados.

Materiales
Automata Programable: Microcontrolador (PIC18F4550) y/o targeta arduino. FPGA (Deo Nano de Altera). Computadora personal.

Bibliografía disponible en el Itescam
Título
Autor
Editorial
Edición/Año
Ejemplares

Parámetros de Examen
PARCIAL 1 De la actividad 1.1.1 a la actividad 2.1.3
PARCIAL 2 De la actividad 3.1.1 a la actividad 4.1.3

Contenido (Unidad / Competencia / Actividad / Material de Aprendizaje)
1. Análisis semántico.
          1.1. Diseña mediante el uso de reglas semánticas dirigidas por sintaxis, un analizador semántico para un compilador.
                   1.1.1. Detectar errores semánticos.
                           https://www.infoplc.net/blogs-automatizacion/item/103508-10-errores-novato-programacion-automatas-plc
                          
                   1.1.2. Reconocer el manejo de tipos en las expresiones y el uso de operadores.
                           Operadores en PLC. (15178 bytes)
                          
                   1.1.3. Manipular la tabla de conversión de símbolos y de errores y direcciones
                           Direccionamiento de bits (21420 bytes)
                          
2. Generación de código intermedio.
          2.1. Diseña las reglas para traducir el código fuente a un código intermedio.
                   2.1.1. Reconocer el manejo de tipos en las expresiones y el uso de operadores.
                           Expresiones logicas (21369 bytes)
                          
                   2.1.2. Desarrollar las acciones que representen la estructura de un lenguaje de programación de alto nivel en un código intermedio.
                           Estructura del programa (40909 bytes)
                          
                   2.1.3. Aplicar las acciones construidas a la gramática del lenguaje prototipo.
                           Construir un proyecto (22341 bytes)
                          
3. Optimización.
          3.1. Conoce e identifica los diferentes tipos de optimización que permita eficientar el código intermedio.
                   3.1.1. Conocer que recursos se consumen en invocación a funciones y expresiones simples.
                           Consumo de memoria (17488 bytes)
                          
                   3.1.2. Conocer los criterios de tiempo de ejecución o extensión de código generado.
                           FIFO — "First-in-first-out" memory (FIFO memory) (14231 bytes)
                          
4. Generación de código objeto.
          4.1. Utiliza un lenguaje de bajo nivel para traducir el código construido a lenguaje máquina para su ejecución.
                   4.1.1. Conocer la arquitectura de los microprocesadores intel y compatibles.
                           Build Project (28479 bytes)
                           Arquitectura (4818424 bytes)
                          
                   4.1.2. Conocer las técnicas de administración de memoria para el almacenamiento de un programa en momento de ejecución.
                           Memoria (335977 bytes)
                          
                   4.1.3. Experimentar con simuladores de arquitectura de microprocesadores.
                           PLCSIM (412847 bytes)
                          

Prácticas de Laboratorio (20232024P)
Fecha
Hora
Grupo
Aula
Práctica
Descripción

Cronogramas (20232024P)
Grupo Actividad Fecha Carrera

Temas para Segunda Reevaluación