Presentación
/ Asignatura / Profesores /
Laboratorios / Material Docente
Arquitectura de Computadores y Sistemas Operativos 1 (ARISO-1) es una
asignatura impartida por el Departamento de
Arquitectura de Computadores (DAC) de
·
Proporcionar
una visión general de la estructura de un computador y de su funcionamiento.
·
Esta
asignatura permite al alumno comprender la correspondencia que existe entre los
elementos típicos de los lenguajes de alto nivel (tipos de datos, expresiones,
sentencias, funciones, etc.) y los elementos del lenguaje máquina que les dan
soporte. A final de curso el alumno debe ser capaz de programar pequeñas
aplicaciones en lenguaje ensamblador.
·
Esta
asignatura permite al alumno conocer los mecanismos básicos que utiliza el
subsistema de entrada/salida de un computador para la sincronización y la
transferencia de datos, saber utilizar estos mecanismos a nivel de programación
y conocer las implicaciones en la estructura del computador.
Bloque I: Lenguaje
Máquina (9 semanas)
1 Arquitectura del Computador
2 Arquitectura del IA32
3 Modos de Direccionamiento
4 Tipos de Datos y Operaciones
5 Gestión de Subrutinas
Bloque II: Subsistema de
Entrada/Salida (5 semanas)
1 Periféricos y Controladores
2 Sincronización de las Operaciones de Entrada/Salida
3 Transferencia de
Conceptos básicos de programación en C y sistemas operativos.
Arquitectura de Computadores y Sistemas Operativos 1 cuenta con una carga
lectiva de 6 créditos. La organización de la asignatura es la siguiente:
·
Clases de
teoría y aplicación: 3 horas/semana (4,5 créditos)
·
Clases de
laboratorio: 2 horas/2 semanas (1,5 créditos)
·
Carga total:
4 horas/semana (6 créditos)
La nota final de la asignatura se calcula de la siguiente manera:
NF = MAX ((0.6 E +
donde:
E = Nota examen final
A = Nota de aplicación (nota del ejercicio realizado en clase de aplicación)
L = Nota de laboratorio (40% evaluación del profesor + 60% nota del control de
laboratorio)
Básica
· BRYANT, R.E.-O'HALLARON, D.R. Computer Systems: A Programmer's Perspective. Ed. Prentice Hall, 2003
Complementaria
· HAMACHER, V.C.-VRANESIC, Z.G.-ZAKY, I.S.G. Organización de Computadoras. 5a Edición. Mc Graw Hill, 1996
·
BREY, B.B. The Intel Microprocessors: 8086/8088,
80186, 80286, 80386, 80486, Pentium, Pentium Pro Processor, Pentium II, Pentium
III, and Pentium 4- Architecture, Programming and Interfacing. 6a Edición. Prentice Hall, 2003
·
STALLINGS, W. Computer Organization and
Architecture. Designing for Performance. 5a Edición. Prentice Hall, 2000
·
TANENBAUM, A.S. Structured Computer Organization.
4a Edición. Prentice Hall, 1999
· PATTERSON, D.A.-HENNESSY, J.L. Organización y Diseño de Computadores. Mc Graw Hill, 1994
·
RICHARD BLUM. Professional Assembly Language
(Programmer to Programmer). WROX,
2005
|
Profesor |
Grupo |
Email |
Despacho |
|
Gladys Utrera (coord.) |
T30, L31 |
gutrera@ac.upc.edu |
D6-102 |
La asistencia al laboratorio
es obligatoria. Las prácticas se realizan en grupos de dos personas. El profesor
evaluará cada alumno de forma individual, en función de la asistencia, la
actitud y los objetivos conseguidos en las diferentes sesiones de laboratorio.
Las sesiones de laboratorio
se llevan a cabo en las aulas informáticas en el sótano del A2 (aula A2-S104B).
Se trabaja en un entorno Linux con el soporte para desarrollo GNU. El material
necesario para el desarrollo de las prácticas será publicado en Atenea con la
antelación necesaria.
Cada sesión tiene una
duración de dos horas y están organizadas de la siguiente manera:
·
Sesión 1:
Linux y revisión de C. Explicación
breve del entorno de programación GNU. Ejercicios de programación en lenguaje
C.
·
Sesión 2:
Introducción al IA32. Realización
de programas sencillos en lenguaje ensamblador IA32.
·
Sesión 3:
Estructuras de datos. Realización
de programas en ensamblador IA32 que utilizan estructuras de datos complejas
(matrices y estructuras).
·
CONTROL:
Ejercicio de laboratorio
(realizado individualmente y de una hora de duración). La nota de este
ejercicio forma parte de la nota final del laboratorio.
·
Sesión 4:
Subrutinas, enlace entre ensamblador IA32 y C. Realización de programas en C y en ensamblador
IA32 que utilizan subrutinas.
·
Sesión 5:
Gestión de los dispositivos de Entrada/Salida. Realización de un programa en C que gestiona
diversos dispositivos de Entrada/Salida (pantalla, reloj y teclado).
Cada grupo visitará el laboratorio cada dos
semanas. A continuación podéis consultar los días de laboratorio de cada
subgrupo y la sesión que se desarrollará en cada visita.
|
Grupo |
Sesión 1 |
Sesión 2 |
Sesión 3 |
CONTROL |
Sesión 4 |
Sesión 5 |
|
31 |
8/3/2012 |
22/03/2012 |
12/04/2012 |
26/04/2012 |
10/05/2012 |
24/05/2012 |
Publicaciones de la
asignatura (disponibles en Atenea y/o el
Cpet)
·
Manual del
80386
·
Colección de
Problemas
·
Guia de les
sessions de laboratori
·
Enunciados
de las sesiones de laboratorio
·
Manual de
instalación de UBUNTU sobre Windows
·
LiveCD con
Ubuntu (os lo podéis bajar de la web picando aquí.
Cuidado!!! Ocupa 720MB!! Puede ser
muy lento )
Exámenes resueltos
(disponibles en Atenea)
|
|