![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
|
![]() ![]() |
||
Trabajos Prácticos |
||
TP1 TP2 TP3 TP4 TP5 TP6 TP7 TP8 TP9 TP10 TP11 TP12 TP13 |
Ejercicio n° 1: A fin de poder representar números
negativos y números reales, podemos sustituir el convenio de representación en Simplez
dado en la lección 1 por los siguientes: Ejercicio n° 2: Si una determinada palabra de la
memoria principal de Simplez contiene 100110011000, encuentre que información está
representada, suponiendo que se interpreta como: Ejercicio n° 3: El siguiente conjunto de 32 bits,
1000 0001 0100 0110 0110 1000 0101 0100, puede representar un número que depende del
convenio utilizado. Encuentre su significación decimal en el caso de que el convenio sea:
Ejercicio n° 4: Represente los números 0,001 y -199,5 en todos los formatos de punto flotante descriptos. Ejercicio n° 5: Suponga que en cuatro bytes consecutivos de la memoria principal de un VAX se tienen almacenados los números 256 y -256 con el formato de la bibliografía-fig. 4.13a. Por error, en un programa aparece una instrucción de suma de enteros en longitud doble, que interpreta esos cuatro bytes como un entero con el formato de la figura 4.13b. ¿ Qué número se interpretaría ?. Ejercicio n° 6: Como se sugiere en la bibliografía, reescriba los programas 3.4 y 3.5 suponiendo que las cadenas de caracteres se almacenan con el convenio extremista mayor. ¿ Por qué motivos resultan ser más complicados los programas ?. Ejercicio n° 7: Compruebe el algoritmo de Booth ejecutando a mano los productos -16x30; 8x(-6), y -8x(-6), representando los operandos con 6 bits y complemento a 2. Ejercicio n° 8: Escriba en ensamblador, haciendo uso de etiquetas los programas 2.2, 2.4, 3.1 y 3.3. Ejercicio n° 9: Estudie diferentes alternativas (capacidad de memoria principal direccionable, tamaño de la página, formato de las instrucciones, etc.) para rediseñar primero Simplez y luego Simplez+i4 de modo que incluyan direccionamiento relativo a página (conservando la longitud de palabra de doce bits). Ejercicio n° 10: Considerando Simplez+p, escriba un subprograma para multiplicar y otro para calcular factorial. Haga una figura similar a la figura de la bibliografía en la que se indique el contenido de la pila a medida que se calcula el factorial de 7. Ejercicio n° 11: Suponga ahora que la solución adoptada para los subprogramas en Simplez no es la de la pila, sino la de que la instrucción CALL guarde la dirección de retorno en la palabra direccionada. Reprograme el programa 5.1 y los del ejercicio anterior. Ejercicio n° 12: Repita el ejercicio anterior considerando Simplez+i4 y que la dirección de retorno se guarda en X. Si se precisara del registro X como índice en un subprograma, ¿ qué manipulaciones sería preciso hacer para no perder la cadena de direcciones de retorno ?. Ejercicio n° 13: Suponiendo que Simplez dispone de una instrucción SKIPZ (entre las de código de operación 111), reprograme los bucles de espera activa. Ejercicio n° 14: En las CPUs de tipo RISC el número medio de ciclos por instrucción está comprendido entre 1.3 y 1.6, en los CISC entre 4 y 10. Por otra parte, los programas en lenguaje de máquina procedentes de un compilador vienen a tener entre 20% y 40% más instrucciones en un RISC que en un CISC. Admitiendo estos datos, calcule los valores extremos de la relación "Velocidad RISC/Velocidad CISC" (suponiendo la misma frecuencia de reloj para ambos). |
|
![]() ![]() ![]() |
Esta página es mantenida por Gustavo Mercado
Ultima modificación 30-Julio-99 |