¡Esta es una revisión vieja del documento!


Trabajos prácticos primer cuatrimestre

Fe de erratas

1.Página 5. En el ejercicio 5 ítem d, ´

 Se recomienda plantear el ejercicio con el siguiente esquema de archivos
    Makefile o make.sh : comandos necesarios para construir el binario
    linker.lds : script para el enlazador
    bochs.cfg : configuración utilizada para el Bochs en cada ejercicio
    init.s : solo el código necesario para inicializar al procesador en modo protegido y en
          ejercicios posteriores la paginación.
    main.s : funcionalidad solicitada en cada ejercicio
    functions.s : funciones auxiliares y/o frecuentemente implementadas en ensamblador
    functions.c : funciones auxiliares y/o frecuentemente implementadas en C
    sys_tables.s : tablas de sistema.

2.Página 5. En el ejercicio 5 la tabla, debería indicar

   Sección                      Dirección inicial
   Rutinas                      00000000h
   Núcleo                       00300000h
   Pila                         1FFFB000h
   Secuencia inicialización ROM FFFFF000h
   Vector de reset              FFFFFFF0h

3.Página 5. En el ejercicio 6 ítem a, debería indicar

 Almacenar en una tabla de 64kB las teclas presionadas que corresponden a dígitos
 hexadecimales. A tal fin se debe realizar una rutina que encueste el buffer de teclado
 (dirección de E/S 0x60 datos y 0x64 estado/comando) en forma periódica. Al llegar al 
 final de la tabla se sobrescriben los valores iniciales.

4.Página 7. En el ejercicio 8 ítem b, debería indicar

 Los dígitos correspondientes al alfabeto hexadecimal conformarán un número de 64bits, 
 es decir si se presionan las teclas 1234ABCD, se debe almacenar en la tabla de dígitos 
 como una entrada que contiene al número 000000001234ABCDh. Cada nuevo número se insertará 
 en la tabla cuando se presione ENTER. Por razones de simplicidad el buffer circular de 
 teclado dispondrá de una longitud de 9 bytes. En la tabla se ingresarán los últimos 16 
 dígitos hexadecimales presionados al pulsar ENTER (123JHAB4567CDEFLMN.ENTER equivale a
 000123AB4567CDEFh). Si al presionar ENTER se han ingresado menos de 8Bytes, se completarán 
 con ceros en las posiciones MSB (1E.ENTER equivale 000000000000001Eh).