115113 Software de Base
Trimestre 2008 Otoño
Instructor: Dr. Francisco
Javier Zaragoza Martínez.
Inicio y fin del curso: martes
30 de septiembre a jueves 11 de diciembre de 2008.
Grupo: CCT01 (martes y jueves
de 11:30
a
13:00).
Asesorías: martes,
miércoles y jueves de 10:00 a 11:30 en la
oficina H-264.
Salón: E-309.
Cupo: 35 estudiantes y 10
oyentes.
Contenido
Se cubrirá el contenido
oficial del curso (el cual se detalla
abajo). Es posible que el temario se cubra en un
orden distinto al allí mencionado.
- Descripción general de la estructura de una computadora.
- Lenguaje de máquina.
- Diseño de sistemas de programación.
- Ensamblador.
- Cargador y ligador.
- Macro-procesador.
Evaluación
La calificación del curso consta de 50 puntos obtenidos mediante
un proyecto de programación
dividido en varias etapas usando el
microprocesador Intel 8085 y 50 puntos obtenidos mediante dos
exámenes
parciales. No
habrá examen global. Además de obtener al menos 30
puntos
en los exámenes y al menos 30 puntos en el proyecto, se
requiere:
- obtener al menos un total de 60 puntos para acreditar con S,
- obtener al menos un total de 73 puntos para acreditar con B y
- obtener al menos un total de 87 puntos para acreditar con MB.
Las tareas y el proyecto se podrán entregar por correo
electrónico a
la cuenta sb en gabrijela.azc.uam.mx y
podrán estar escritas en C, C++, Java o Pascal. Su cuenta
está en la misma máquina, a la que se pueden conectar con
ssh y que tiene
dirección IP 148.206.75.15. Recuerden que, de acuerdo al Reglamento de
Alumnos de la UAM, es falta de los alumnos en contra de la
Institución el suplantar o permitir ser suplantado en la
realización de actividades académicas (Artículo 9)
y se impondrá desde amonestación escrita hasta
suspensión por dos trimestres (Artículo 13).
Calendario
El calendario de clases, de entrega de etapas del proyecto y de
exámenes escritos que muestro abajo es tentativo e irá
apareciendo paulatinamente. He anotado los números
de página de las notas a la derecha
de cada
tema.
- 30/09: Inicio del
curso. Software de aplicación y software de base (1-10).
- 02/10: Estructura del SIC y SIC/XE (11-25).
- 07/10: Formatos de instrucción del SIC/XE (26-36).
- 09/10: Ensamblador simple y código objeto (37-51).
- 13/10: Primera sesión extra sobre el proyecto (16:00 a 17:00, Laboratorio de simulación G208A).
Traer impresas las hojas mencionadas del manual.
- 14/10: Tablas y lógica del ensamblador (52-67).
- 16/10: Estaré en un congreso.
- 21/10: Modos de direccionamiento del SIC/XE (68-80).
- 22/10: Segunda sesión extra sobre el proyecto (13:00 a 14:00, Sala de Juntas de
Sistemas).
- 23/10: Relocalización de programas (81-91).
- 28/10: Literales,
símbolos y expresiones (92-110).
- 30/10: Primer examen
parcial: Modos de direccionamiento y ensambladores (1-110).
- 01 y 02/11: Concurso Regional de Programación
ACM ICPC.
- 04/11: Bloques de programa y secciones de control (111-124).
- 05/11: Tercera sesión extra sobre el proyecto (13:00 a 14:00, Sala de Juntas de
Sistemas).
- 06/11: Ensamblado con símbolos externos (125-135).
- 10/11: Mi servidor no
tuvo red por varios días. Las fechas de entrega han sido
cambiadas y no habrá quinta etapa del proyecto.
- 11/11: Opciones de diseño del ensamblador (136-147).
- 13/11: Cargadores básico y relocalizador (148-160).
- 18/11: Ligado y relocalización (161-174).
- 20/11: Día feriado.
- 25/11: Opciones de ligado independientes de la máquina
(175-192).
- 26/11: Cuarta sesión extra sobre el proyecto (15:00 a
16:00, Sala de Juntas de
Sistemas).
- 27/11: Opciones de diseño del cargador (193-210).
- 02/12: Clase cancelada
debido al ruido generado por la UAMistad.
- 04/12: Macroprocesadores básicos y algoritmo del
macroprocesador (211-234).
- 09/12: Estaré en un congreso. Segundo
examen parcial: Secciones de control, cargadores, ligadores y
macroprocesadores (111-234).
- 11/12: Fin del curso. Estaré en un congreso.
- 16 y 17/12: Revisión
del proyecto de 9:00 a 13:00 (entre más pronto vengan mejor).
- 17/12: Fecha programada para el examen global.
- 18/12: Entrega del acta.
Bibliografía
- Beck. System Software: An Introduction to
Systems Programming. Addison Wesley.
[Los capítulos 1 a 4 contienen todo el temario del
curso.]
- Brookshear. Introducción
a las ciencias de la computación. Addison Wesley.
- Donovan. Systems Programming. Mc Graw Hill.
- Kernighan y Pike. El
entorno de programación UNIX. Prentice Hall.
- Kernighan y Pike. La
práctica de la programación. Prentice Hall.
- Kleitz. Microprocessors and Microcontroller Fundamentals: the
8085 and 8051 Hardware and Software. Prentice Hall.
- Intel. 8080/85 Assembly Programming. Intel Corporation.
- Intel. 8085AH 8-Bit HMOS Microprocessor.
Intel Corporation.
- Intel. MCS51
Microcontroller Object Module Format. Intel Corporation.
- Intel. The 8080/8085 Microprocessor Book. Wiley.
- Levine, G. Computación
y programación moderna. Addison Wesley. [Los
capítulos 3 y 5 contienen una introducción al curso.]
- Levine, J. Linkers &
Loaders. Morgan Kaufmann Publishers. [Este libro puede verse como
una continuación del capítulo 5 del curso.]
- Ratnakumar. Simulador GNUSim8085 y guía
de programación.
- Ullman. Fundamental Concepts of Programming Systems. Addison
Wesley.
- Wikipedia. Intel
HEX.
- Wikipedia. Intel
8085 auf Deutsch.