Syllabus

SCC-1014 LENGUAJE DE INTERFAZ

DR. JOSE LUIS LIRA TURRIZA

jlira@itescam.edu.mx

Semestre Horas Teoría Horas Práctica Créditos Clasificación
6 2 2 4 Ciencia Ingeniería

Prerrequisitos
Competencias Específicas
  1. Comprender el funcionamiento general de las computadoras.
  2. Comprender las características de la arquitectura básica de una computadora.
  3. Elaborar algoritmos computacionales para la solución de problemas de cómputo.
Competencias Genéricas
  1. Solución de problemas
  2. Capacidad de Organizar y planificar
  3. Trabajo en equipo

Competencias Atributos de Ingeniería
Conoce la arquitectura y organización de un procesador y la estructura de un programa en ensamblador e identifica la relación entre ambos.   Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas
Conoce y aplica instrucciones del lenguaje ensamblador para programar aplicaciones de interfaz   Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería
Aplica macros y procedimientos en el desarrollo de aplicaciones de software orientado a interfaz en lenguaje ensamblador   Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería
Programar interfaces de software y hardware para la manipulación de puertos y dispositivos de computadora   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 trabajajos marcados en clases y extra clases.
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 Dirección académica (80%).
5.- Tener un comportamiento de disciplina dentro del salon 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.

ACTIVIDADES EN LINEA POR CONTINGENCIA DE SALUD

  • El alumno deberá revisar las tareas en el moodle en el horario de clase asignado
  • Elaboración de la práctica descrita en P2C1U3A1 P2 Actividad 1 FU3 Análisis comparativo

Materiales
No Aplica

Bibliografía disponible en el Itescam
Título
Autor
Editorial
Edición/Año
Ejemplares
Lenguaje ensamblador para computadoras basadas en intel /
Irvine, Kip R.
Pearson,
5a. / 2008.
1
-
Lenguaje ensamblador para microcomputadoras ibm : para principiantes y avanzados /
Godfrey, J. Terry.
Prentice Hall Hispanoamericana,
1991.
5
Si

Parámetros de Examen
PARCIAL 1 De la actividad 1.1.1 a la actividad 2.1.2
PARCIAL 2 De la actividad 3.1.1 a la actividad 4.3.2

Contenido (Unidad / Competencia / Actividad / Material de Aprendizaje)
1. Introducción al Lenguaje Ensamblador
          1.1. Introducción a la asignatura
                   1.1.1. Presentación de la asignatura
                           Planeación Didáctica de la asignatura (134028 bytes)
                           Manual de Prácticas de la asignatura (191744 bytes)
                          
          1.2. Conoce la arquitectura y organización de un procesador y la estructura de un programa en ensamblador e identifica la relación entre ambos.
                   1.2.1. Investigar la estructura y organización de un procesador (CPU), y discutir y formalizar grupalmente lo investigado.
                           Introducción a la Programación en Ensamblador (249921 bytes)
                          
                   1.2.2. Analizar los registros más importantes que contiene un CPU, así como las funciones de los mismos.
                           Registros (2456477 bytes)
                          
                   1.2.3. Describir modos de direccionamiento a memoria y efectuar ejercicios
                          
                   1.2.4. Realizar ejemplos sencillos de cómo estructurar un programa fuente y que éste despliegue mensajes en el monitor con instrucciones básicas en lenguaje ensamblador
                          
          1.3. Identifica la relación entre la arquitectura y organización de un procesador y la estructura de un programa
                   1.3.1. Describir modos de direccionamiento a memoria y efectuar ejercicios.
                           Tipos de Memoria (58368 bytes)
                          
                   1.3.2. Realizar ejemplos sencillos de cómo estructurar un programa fuente y que esté despliegue mensajes en el monitor con instrucciones básicas en lenguaje ensamblador
                           Tipos de Interrupciones (12832 bytes)
                           Interrupciones (12414 bytes)
                          
2. Programación Básica
          2.1. Conoce y aplica instrucciones del lenguaje ensamblador para programar aplicaciones de interfaz
                   2.1.1. Realizar investigación y listar las principales instrucciones de programación en lenguaje ensamblador.
                           Entorno de Programación (109251 bytes)
                          
                   2.1.2. Desarrollar programas por medio de prácticas en lenguaje ensamblador, los cuales ejemplifiquen las diferentes instrucciones y funciones básicas así como la forma de estructurarlas.
                           Instrucciones de Ciclo (12103 bytes)
                          
3. Modularización
          3.1. Aplica macros y procedimientos en el desarrollo de aplicaciones de software orientado a interfaz en lenguaje ensamblador
                   3.1.1. Realizar investigaciones sobre los conceptos macro y procedimiento, analizando sus semejanzas y diferencias.
                           Procedimientos Externos (13217 bytes)
                           Procedimientos Internos (12466 bytes)
                          
                   3.1.2. Analizar el funcionamiento de un programa que no utiliza macros o procedimientos en su funcionamiento, todo esto utilizando un software que permita obtener datos estadísticos del funcionamiento de los programas en depuración.
                           Macros Internas (164195 bytes)
                           Macros Externas (15871 bytes)
                          
                   3.1.3. Desarrollar programas en un lenguaje de programación que haga uso de macros o procedimientos.
                          
                   3.1.4. Analizar el funcionamiento interno de los programas desarrollados haciendo el uso del software que permita obtener datos estadísticos sobre el funcionamiento de los mismos.
                          
4. Programación de Dispositivos
          4.1. Programar interfaces de software y hardware para la manipulación de puertos y dispositivos de computadora
                   4.1.1. Analizar el funcionamiento del buffer de video de una computadora, mediante la lectura en modo texto del mismo.
                           Funciones en Ensamblador (16576 bytes)
                          
                   4.1.2. Desarrollar programas en lenguaje ensamblador para acceder a los dispositivos de almacenamiento de la computadora.
                           Integración con Gnu C (39227 bytes)
                          
                   4.1.3. Diseñar una interfaz de hardware utilizando algún tipo de integrado programable.
                          
                   4.1.4. Diseñar una interfaz de software en algún lenguaje de programación para controlar la interfaz de hardware utilizando los puertos paralelos, seriales y USB de la computadora.
                          
          4.2. Programación para puertos
                   4.2.1. Programación del puerto serial
                           El Puerto Serie (24132 bytes)
                          
                   4.2.2. Programación del puerto paralelo
                           http://expo.itch.edu.mx/view.php?f=asm_31
                          
                   4.2.3. Programación del puerto usb
                           http://usuarios.multimania.es/charlytospage/assembler.htm
                          
          4.3. Programación Híbrida
                   4.3.1. Programación en Java
                           Programación Híbrida (78016 bytes)
                          
                   4.3.2. Programación en C/C++
                           Programación Híbrida (39227 bytes)
                          

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

Cronogramas (20232024P)
Grupo Actividad Fecha Carrera
6 A 1.1.1 Presentación de la asignatura 2024-01-31 ISIC-2010-224
6 A 1.2.1 Investigar la estructura y organización de un procesador (CPU), y discutir y formalizar grupalmente lo investigado. 2024-02-02 ISIC-2010-224
6 A 1.2.2 Analizar los registros más importantes que contiene un CPU, así como las funciones de los mismos. 2024-02-07 ISIC-2010-224
6 A 1.2.3 Describir modos de direccionamiento a memoria y efectuar ejercicios 2024-02-09 ISIC-2010-224
6 A 1.2.4 Realizar ejemplos sencillos de cómo estructurar un programa fuente y que éste despliegue mensajes en el monitor con instrucciones básicas en lenguaje ensamblador 2024-02-14 ISIC-2010-224
6 A 1.2.4 Realizar ejemplos sencillos de cómo estructurar un programa fuente y que éste despliegue mensajes en el monitor con instrucciones básicas en lenguaje ensamblador 2024-02-16 ISIC-2010-224
6 A 1.3.1 Describir modos de direccionamiento a memoria y efectuar ejercicios. 2024-02-21 ISIC-2010-224
6 A 1.3.1 Describir modos de direccionamiento a memoria y efectuar ejercicios. 2024-02-23 ISIC-2010-224
6 A 1.3.2 Realizar ejemplos sencillos de cómo estructurar un programa fuente y que esté despliegue mensajes en el monitor con instrucciones básicas en lenguaje ensamblador 2024-02-28 ISIC-2010-224
6 A 1.3.2 Realizar ejemplos sencillos de cómo estructurar un programa fuente y que esté despliegue mensajes en el monitor con instrucciones básicas en lenguaje ensamblador 2024-03-01 ISIC-2010-224
6 A 2.1.1 Realizar investigación y listar las principales instrucciones de programación en lenguaje ensamblador. 2024-03-06 ISIC-2010-224
6 A 2.1.1 Realizar investigación y listar las principales instrucciones de programación en lenguaje ensamblador. 2024-03-08 ISIC-2010-224
6 A 2.1.2 Desarrollar programas por medio de prácticas en lenguaje ensamblador, los cuales ejemplifiquen las diferentes instrucciones y funciones básicas así como la forma de estructurarlas. 2024-03-13 ISIC-2010-224
6 A 2.1.2 Desarrollar programas por medio de prácticas en lenguaje ensamblador, los cuales ejemplifiquen las diferentes instrucciones y funciones básicas así como la forma de estructurarlas. 2024-03-15 ISIC-2010-224

Temas para Segunda Reevaluación