Parcial 1 2C/2008 (Organización del Computador I)

De Cuba-Wiki
La versión para imprimir ya no se admite y puede contener errores de representación. Actualiza los marcadores del navegador y utiliza en su lugar la función de impresión predeterminada del navegador.

Plantilla:Back

Ejercicio 1 (25 puntos)

Dada la siguiente codificación de números reales:

Mantisa Exponente Signo 17 6 1

Exponente: notación exceso 31.

Signo Error al representar (error de sintaxis): {\displaystyle \left\{\begin{matrix} 0 & positivo\\ 1 & negativo \end{matrix}\right} .

Mantisa: representada en punto fijo con 2 bits más significativos para la parte entera y los 15 bits restantes para la parte fraccionaria.

(7 puntos) a) Escribir el máximo y el mínimo real mayor a cero representable en este sistema.

(3 puntos) b) ¿Existe única representación?

(5 puntos) c) ¿Qué número está representando 0x780571, en esta codificación si está almacenado big-endian y considerando que la palabra es de 8 bits?

(10 puntos) d) Para la misma codificación, donde la mantisa es normalizada a [1; x:::x]. Responda los ítems a), b), y c) considerando para este último que está codificado little endian.

Ejercicio 2 (25 puntos)

Construir un circuito secuencial de 3 entradas y una salida. El comportamiento del circuito es el siguiente: por cada ciclo de clock se escribirá en las entradas un valor. Cuando la cantidad de valores iguales a 111 que se escriben en las entradas alcanza las 5 veces, se debe generar un 1 en la salida, durante un ciclo de clock.

(20 puntos) 1. Construir el circuito descripto en el enunciado.

(5 puntos) 2. ¿Puede el circuito anterior construirse con un solo flip-flop?

Ejercicio 3 (25 puntos)

Sea el siguiente fragmento de código assembler de ORGA1:

vec: DW 0x0000

Dw 0x000C

main: MOV [0x000D], 0x2840

MOV [0x000E], 0x0001

MOV R1, vec

call chon

DW 0x0000

chon: DW 0xBEBA

DW 0xCAFE

MOV R1, [R1]

CMP [R1], 0x0000

JE fin

MOV R1, 0xFFFF

fin: RET

Considerando que la etiqueta vec se encuentra cargada a partir de la dirección 0x0000, que todos los registros inicialmente valen cero, exceptuando el PC=0x0002 y SP=0xFECA.

(15 puntos) 1. Realizar el seguimiento desde la etiqueta main, hasta llegar a una instrucción invalida.

(5 puntos) 2. Indicar las posiciones de memoria correspondientes a las instrucciones que se modifican durante la ejecución.

(5 puntos) 3. ¿Cual es el valor de R1 al finalizar la ejecución?

Ejercicio 4 (25 puntos)

Sea el siguiente formato de instrucción para un procesador con direcciones de memoria de 16 bits, 8 registros y 3 tipos de direccionamiento de registros.

Tipo 0:

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

Codop Memoria

Codop 0000 a 1001

  • 10 instrucciones con una dirección de memoria.

Tipo 1:

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

REG 1 REG 2 REG 3

Codop E Mod Reg Mod Reg Mod Reg

Codop 1010 a 1111, con bit E = 0, Mod = 00 a 10

  • 6 instrucciones de 3 registros con 3 modos de direccionamiento.

(20 puntos) 1. Agregar al formato anterior, manteniendo compatibilidad, tres tipos nuevos de instrucciones.

a) Tipo 2: 18 instrucciones de 2 registros con 3 modos de direccionamiento y un operando de 3 bits.

b) Tipo 3: 48 instrucciones de 1 registro con 3 modos de direccionamiento y un operando de 4 bits.

c) Tipo 4: 53 instrucciones sin operandos.

(5 puntos) 2. ¿Puede agregarse a la arquitectura anterior 1 instrucción de una dirección de memoria?. Justifique.