Está en la página 1de 6

FC-FISC-1-8-2016)

UNIVERSIDAD TECNOLÓGICA DE PANAMÁ


FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
ARQUITECTURA Y REDES DE COMPUTADORAS
TALLER 2

Facilitador(a): Itzel Saavedra Asignatura: Arquitectura de Computadoras 1

Estudiante: _____________________________ Fecha:__________ Grupo: 4IL131

A. TÍTULO DE LA EXPERIENCIA:
REPERTORIO DE INSTRUCCIONES

B. TEMAS:

C. OBJETIVO(S):
 Describir los métodos de direccionamiento, formatos de instrucciones y los requerimientos
del lenguaje ensamblador para la ejecución de programas prácticos

D. METODOLOGÍA:
Aprendizaje Significativo (cuestionario)

E. PROCEDIMIENTO O ENUNCIADO DE LA EXPERIENCIA:


Conteste las preguntas dadas en el anexo utilizando la presentación en Power Point y el libro
proporcionado cap 10 y 11 de STANLLING

F. RECURSOS:
Presentación,
Bibliografía recomendada
computadora.

G. RESULTADOS (OPCIONAL, DE ACUERDO A LA ACTIVIDAD):

H. CONSIDERACIONES FINALES:
Conclusiones

I. BIBLIOGRAFIA:
STALLING, W. (2006). Organización y Arquitectura de Computadoras. 7ª. Edición. España:
Prentice Hall. (LIBRO DE TEXTO)

J. RÚBRICAS:
Evaluación Acumulativa
FC-FISC-1-8-2016)
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
ARQUITECTURA Y REDES DE COMPUTADORAS
TALLER 2

Anexo
Preguntas

1. Componentes típicos de una instrucción máquina


2. ¿Qué posiciones de memorización pueden contener operandos de origen y de destino?
3. Si una instrucción contiene cuatro direcciones ¿qué propósito podría tener cada dirección?
4. Enumere y explique brevemente cinco aspectos importantes en el diseño del repertorio de
instrucciones.
5. ¿Qué tipos de operandos son usuales en los repertorios de instrucciones máquina?
6. ¿Qué relación existe entre el código de caracteres IRA o ASCII y la representación decimal
empaquetada?
7. ¿Qué diferencia existe entre desplazamiento aritmético y desplazamiento lógico?
8. ¿Por qué son necesarias las instrucciones de control de flujo de ejecución?
9. Enumere y explique brevemente dos formas comunes de generar la condición a comprobar en
una instrucción de bifurcación o salto condicional.
10. ¿Qué se entiende por anidamiento de procedimientos?
11. Enumere tres posibles ubicaciones para almacenar la dirección de retorno de un procedimiento.
12. ¿Qué es un procedimiento reentrante?
13. ¿Qué diferencia hay entre lenguaje ensamblador y lenguaje máquina?
14. ¿En qué consiste la notación polaca inversa?
15. ¿Cuál es la diferencia entre big endian y titile endian?

Problemas

1. Exprese en notación hexadecimal:


1. El número en formato decimal empaquetado: 23.
2. La pareja de caracteres ASCII: 23.
2. Para cada uno de los siguientes números en decimal empaquetado, indique su valor decimal:
3. Un determinado microprocesador tiene palabras de un byte. ¿Cuáles son los valores enteros más
pequeño y grande que pueden representarse en las siguientes representaciones?

a. Sin signo.
b. En signo-magnitud.
c. En complemento a uno.
d. En complemento a dos.
e. Decimal empaquetado sin signo.
f. Decimal empaquetado con signo.
FC-FISC-1-8-2016)
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
ARQUITECTURA Y REDES DE COMPUTADORAS
TALLER 2

4. . Muchos procesadores incluyen lógica para realizar operaciones aritméticas con números en
decimal empaquetado. Aunque las reglas para la aritmética decimal son similares a las de las
operaciones binarias, los resultados decimales pueden requerir algunas correcciones o ajustes de los
dígitos individuales cuando se emplea lógica binaria. Considere la suma en decimal de dos números
sin signo. Si cada número consta de N dígitos, habrá 4N bits en cada número. Los dos números se
suman mediante un sumador binario. Sugiera una regla sencilla para corregir el resultado. Realice
después la suma de los números 1698 y 1786.
5. El complemento a diez de un número decimal X se define como 10 N - X, donde N es el número de
dígitos decimales del número. Describa el uso de la representación en complemento a diez para
realizar la resta decimal. Ilustre el procedimiento restando (0326) 10 de (0736)10

6. Compare las máquinas de cero, una, dos y tres direcciones, escribiendo programas que calculen: X =
(A + B ( C) / (D - E ( F) para cada una de las cuatro máquinas. Las instrucciones de que se dispone
son:
a. 3 direcciones: X=(A + B (C)) / (D – E (F))
b. 2 direcciones: X=(A + B (C)) / (D – E (F))
c. 1 dirección: X=(A + B (C)) / (D – E (F))
d. 0 direcciones: X=(A + B (C)) / (D – E (F))
7. Considere un computador hipotético con un repertorio de instrucciones formado por solo dos
instrucciones de n bits. El primer bit especifica el código de operación, y los bits restantes
direccionan una de las 2n - I palabras de n bits de la memoria principal. Las dos instrucciones son:
SUBS X Resta al acumulador el contenido de la posición X, y memoriza el resultado en la posición X y
en el acumulador. JUMP X Coloca la dirección X en el contador de programa. Una palabra de
memoria principal puede contener o una instrucción o un número binario en notación de
complemento a dos. Demuestre que este repertorio de instrucciones es razonablemente completo
especificando cómo se podrían programar las siguientes operaciones:
 Transferencia de datos: posición X al acumulador, acumulador a la posición X.
 Suma: suma el contenido de la posición X al acumulador.
 Salto condicional.
 Operación lógica OR
 Operaciones de E/S
8. Muchos repertorios de instrucciones incluyen la instrucción NOOP (no operación), que no tiene otro
efecto sobre el estado del procesador que incrementar el contador de programa. Sugiera algunos
usos de esta instrucción.
9. En la Sección 10.4 indicamos que tanto el desplazamiento aritmético como el lógico a la izquierda
corresponden a una multiplicación por dos cuando no se produce desbordamiento; y si se produce
desbordamiento ambas operaciones producen resultados diferentes, pero el desplazamiento
aritmético mantiene el signo del número. Compruebe que se cumple esta afinación con números de
cinco bits en complemento a dos.
FC-FISC-1-8-2016)
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
ARQUITECTURA Y REDES DE COMPUTADORAS
TALLER 2

10. .
11. .
12. .
13. .
14. .
15. .
16. .
17. El Apéndice 10A puntualiza que no hay instrucciones específicas para la pila en un repertorio de
instrucciones cuando esta va a ser utilizada por el procesador solo para manejar procedimientos.
¿Cómo puede el procesador utilizar la pila para cualquier fin sin instrucciones específicas de gestión
de la pila?

18. Convierta las siguientes fórmulas de notación polaca inversa a infija:


a) AB + C + D X
b) AB/CD/ +
c) ABCDE + X x/
d) ABCDE + F/ + G – H/X +
19. Convierta las siguientes fórmulas de Infija a polaca inversa:
a) A + B + C + D + E
b) (A + B) X (C + D) + E
c) (A X B) + (C X D) + E
d) (A - B) X (((C - D X E)/F)/G) X H
20. Convierta la expresión A + B - C a notación postfija utilizando el algoritmo de Dijkstra. Muestre los
pasos seguidos. ¿Es el resultado equivalente a (A + B) - C, o a A + (B - C)? ¿Importa?
a. A+B-C

Algoritmo:
La expresión infija se va recorriendo de izquierda a derecha, y se va generando a la vez la expresión
postfija como salida.
Los pasos del algoritmo son los siguientes:
1) Examinar el siguiente elemento de la línea de entrada.
2) Extraerlo como salida si se trata de un operando.
3) Si es una apertura de paréntesis, se introduce en la pila.
4) Si es un operador, entonces:

Si la cabecera de la pila contiene una apertura de paréntesis, apilar el operador.


Si tiene una prioridad más alta que el de la cabecera de la pila (la multiplicación y la división
tiene el mayor prioridad que la suma y la resta), apilar el operador.
FC-FISC-1-8-2016)
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
ARQUITECTURA Y REDES DE COMPUTADORAS
TALLER 2

Si tiene una prioridad menor o igual, efectuar un «POP» de la pila a la salida, y repetir el paso
4. (Se puede crear un ciclo antes de avanzar al siguiente paso del problema)
5) Si es un paréntesis de cierre, desapilar operadores hacia la salida hasta que se encuentre
paréntesis de apertura. Desapilar y descartar el paréntesis de apertura.
6) Si hay más entradas, ir al paso l.
7) Si no hay más elementos de entrada, desapilar los restantes operadores.

21. Utilizando el algoritmo para conversión de notación infija a postfija definido en el Apéndice 10.A,
muestre los pasos involucrados en la conversión a postfija de la expresión de la Figura 10.15. Utilice
una representación similar a la empleada en la Figura 10.17.
a. F = ( a - b ) / ( c + d x e)
SALIDA PILA
22. Muestre el cálculo de la expresión de la Figura 10.17, empleando una representación similar a la
Figura 10.16.

Capítulo 11

11 .1. Defina brevemente direccionamiento inmediato.


11.2. Defina brevemente direccionamiento directo.
11.3. Defina brevemente direccionamiento indirecto.
11.4. Defina brevemente direccionamiento de registros.
11.5. Defina brevemente direccionamiento indirecto con registro.
11.6. Defina brevemente direccionamiento con desplazamiento.
11.7. Defina brevemente direccionamiento relativo.
11.8. ¿Qué ventaja tiene el auto indexado?
11.9. ¿Qué diferencia existe entre preindexado y postindexado?
11.10. ¿Qué hechos influyen al determinar el uso de los bits de direcciones de una instrucción?
11.11. ¿Cuáles son las ventajas y desventajas del uso de un formato de instrucción de longitud variable?

Problemas

11.1. Dados los valores de memoria siguientes, y suponiendo una máquina con instrucciones de una sola
dirección, y con un acumulador, ¿qué valores cargan las siguientes instrucciones en el acumulador?
La palabra 20 contiene 40.
La palabra 30 contiene 50.
La palabra 40 contiene 60.
La palabra 50 contiene 70.
(al CARGA INMEDIATA 20
(b) CARGA DIRECTA 20
(e) CARGA INDIRECTA 20
(d) CARGA INMEDIATA 30
(e) CARGA DIRECTA 30
FC-FISC-1-8-2016)
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
ARQUITECTURA Y REDES DE COMPUTADORAS
TALLER 2

(f) CARGA INDIRECTA 30

11 .2. Suponga que la dirección almacenada en el contador de programa se designa con el símbolo X1.
La instrucción almacenada en X1 tiene una parte de dirección (referencia a operando) X2. El operando
que se necesita para ejecutar la instrucción está almacenado en la palabra de memoria con dirección X3.
Un registro de índice contiene el valor X4. ¿Qué relación existe entre estas cantidades si el modo de
direccionamiento de la instrucción es (a) directo; (b) indirecto; (c)el relativo al PC; (d) indexado?

11.3. El campo de dirección de una instrucción contiene el valor decimal 14. Indique dónde se ubica el
operando correspondiente en cada uno de los casos:
(a) direccionamiento inmediato
(b) direccionamiento directo
(e) direccionamiento indirecto
(d) direccionamiento de registro
(e) direccionamiento indirecto con registro

11.4. Considere un procesador de 16 bits para el que se


tiene en memoria principal, a partir de la dirección
200, lo siguiente:

La primera parte de la primera palabra indica que es una instrucción que carga un valor en el
acumulador. El campo «Modo» indica un modo de direccionamiento y, si procede, indica un registro
origen: suponga que cuando se usa, el registro origen es RI, que tiene un valor de 400. Hay también un
registro base que contiene el. valor 100. El valor 500 ubicado en la posición 201 puede formar parte del
cálculo de la dirección. Suponga que la posición 399 contiene el valor 999, la posición 400 contiene el
valor 1000 Y así sucesivamente. Determine la dirección efectiva, y el operando que se carga, para cada
uno de los siguientes modos de direccionamiento:

11.6. Una instrucción de bifurcación con modo relativo al PC está almacenada en la posición de memoria
53010 El salto se efectúa a la posición 530 10 El campo de dirección de la instrucción es de 10 bits
¿Cuál es el valor binario de la instrucción?

11.7 ¿Cuántas referencias a memoria necesita efectuar el procesador cuando capta y ejecuta una
instrucción modo de direccionamiento indirecto, si dicha instrucción es (a) un cálculo que requiere de un
operando; (b) un salto?

También podría gustarte