Organización de ordenadores

Anuncio
ORGANIZACIÓN DEL COMPUTADOR I
Práctica 3 − Formatos de instrucciones
1. Identifique los diversos aspectos que diferencian a los conjuntos de instucciones de las
CPU´s
2. Enumere y describa algunos modos de direccionamiento más comúnmente soportados
por las CPU´s
3. Sea la siguiente palabra de 32 bite representada en hexadecimal 76543210, indique
cómo se almacena suponiendo un ordenamiento "little endian" y suponiendo ordenamiento
"bug endian"
4. Considerar una computadora hipotética con un conjunto de instrucciones que tiene sólo
dos instrucciones de n bits. El primer bit especifica el código de operación, y los demás
especifican una de las palabras de memoria. Las dos instrucciones son:
SUBS X: restar el contenido de la posición X de un registro acumulador, y
guardar el resultado en la posición X y en el acumulador;
JUMP X: poner la dirección X en el contador de programa.
Una palabra en la memoria principal puede contener o una instrucción o un
número binario en notación de complemento a dos.
i) ¿Cuánta memoria puede direccionar este procesador?
ii) Mostrar cómo se podrían programar las siguientes operaciones:
a) Transferencias de datos, de la posición X al acumulador, y del
acumulador a la posición X.
b) Suma: sumar los contenidos de la posición X en el acumulador.
5. Las siguientes son algunas de las instrucciones que existían en la IAS, incluyendo sus
códigos de operación:
0011 = Carga AC desde E/S
1
0111 = Guarda AC en E/S
0101 = Suma.
En estos casos, la dirección de 12 bits identifica un dispositivo de E/S en
particular (recordemos que la IAS tiene palabras de 20 bits, que los 8
primeros bits son códigos de operación y los siguientes 12 una dirección de
memoria, y que las operaciones pasan por un único registro acumulador).
ORGANIZACIÓN DEL COMPUTADOR I
Práctica 3 − Formatos de instrucciones
1. Identifique los diversos aspectos que diferencian a los conjuntos de instucciones de las
CPU´s
2. Enumere y describa algunos modos de direccionamiento más comúnmente soportados
por las CPU´s
3. Sea la siguiente palabra de 32 bite representada en hexadecimal 76543210, indique
cómo se almacena suponiendo un ordenamiento "little endian" y suponiendo ordenamiento
"bug endian"
4. Considerar una computadora hipotética con un conjunto de instrucciones que tiene sólo
dos instrucciones de n bits. El primer bit especifica el código de operación, y los demás
especifican una de las palabras de memoria. Las dos instrucciones son:
SUBS X: restar el contenido de la posición X de un registro acumulador, y
guardar el resultado en la posición X y en el acumulador;
JUMP X: poner la dirección X en el contador de programa.
Una palabra en la memoria principal puede contener o una instrucción o un
número binario en notación de complemento a dos.
i) ¿Cuánta memoria puede direccionar este procesador?
ii) Mostrar cómo se podrían programar las siguientes operaciones:
a) Transferencias de datos, de la posición X al acumulador, y del
2
acumulador a la posición X.
b) Suma: sumar los contenidos de la posición X en el acumulador.
5. Las siguientes son algunas de las instrucciones que existían en la IAS, incluyendo sus
códigos de operación:
0011 = Carga AC desde E/S
0111 = Guarda AC en E/S
0101 = Suma.
En estos casos, la dirección de 12 bits identifica un dispositivo de E/S en
particular (recordemos que la IAS tiene palabras de 20 bits, que los 8
primeros bits son códigos de operación y los siguientes 12 una dirección de
memoria, y que las operaciones pasan por un único registro acumulador).
ORGANIZACIÓN DEL COMPUTADOR I
Práctica 3 − Formatos de instrucciones
1. Identifique los diversos aspectos que diferencian a los conjuntos de instucciones de las
CPU´s
2. Enumere y describa algunos modos de direccionamiento más comúnmente soportados
por las CPU´s
3. Sea la siguiente palabra de 32 bite representada en hexadecimal 76543210, indique
cómo se almacena suponiendo un ordenamiento "little endian" y suponiendo ordenamiento
"bug endian"
4. Considerar una computadora hipotética con un conjunto de instrucciones que tiene sólo
dos instrucciones de n bits. El primer bit especifica el código de operación, y los demás
especifican una de las palabras de memoria. Las dos instrucciones son:
SUBS X: restar el contenido de la posición X de un registro acumulador, y
guardar el resultado en la posición X y en el acumulador;
JUMP X: poner la dirección X en el contador de programa.
3
Una palabra en la memoria principal puede contener o una instrucción o un
número binario en notación de complemento a dos.
i) ¿Cuánta memoria puede direccionar este procesador?
ii) Mostrar cómo se podrían programar las siguientes operaciones:
a) Transferencias de datos, de la posición X al acumulador, y del
acumulador a la posición X.
b) Suma: sumar los contenidos de la posición X en el acumulador.
5. Las siguientes son algunas de las instrucciones que existían en la IAS, incluyendo sus
códigos de operación:
0011 = Carga AC desde E/S
0111 = Guarda AC en E/S
0101 = Suma.
En estos casos, la dirección de 12 bits identifica un dispositivo de E/S en
particular (recordemos que la IAS tiene palabras de 20 bits, que los 8
primeros bits son códigos de operación y los siguientes 12 una dirección de
memoria, y que las operaciones pasan por un único registro acumulador).
0 direcciones 1 dirección 2 direcciones 3 direcciones
PUSH M LOAD M AC ð M MOV X,Y (X ð Y) MOV X,Y (X ð Y)
POP M STORE M M ð AC ADD X,Y (X ð X+Y) ADD X,Y,Z (X ð Y+Z)
ADD push(pop+pop) ADD M AC ð AC + M SUB X,Y (X ð X−Y) SUB X,Y,Z (X ð Y−Z)
SUB push(pop−pop) SUB M AC ð AC − M MUL X,Y (X ð X * Y) MUL X,Y,Z (X ð Y * Z)
MUL push(pop*pop) MUL M AC ð AC * M DIV X,Y (X ð X / Y) DIV X,Y,Z (X ð Y / Z)
DIV push(pop/pop) DIV M AC ð AC / M
M es una dirección de memoria de 16 bits. X, Y y Z son direcciones de memoria o
registros a elección.
a) Compare máquinas con 0, 1 2 y 3 direcciones para hacer la siguiente cuenta:
4
x = (a+b*c)/(d−e*f)
b) Asumiendo que las direcciones de memoria son de 16 bits, los códigos de
operación de 8 bits y longitudes de instrucción múltiplos de 4 bits: cuántos bits
precisa cada máquina para calcular X?
5
Descargar