Arquitectura de Computadores Cap VI:Repertorio de Instrucciones
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Notas del editor
C odigo de operaci on: especi ca la operaci on a realizar (suma, E/S, etc.). La operaci on se indica mediante un c odigo binario. Referencia a operandos fuente: la operaci on puede implicar a uno o m as operandos fuente, es decir, operandos que son entradas para la instrucci on. Referencia al operando resultado: la operaci on puede producir un resultado. Referencia a la siguiente instrucci on: dice a la CPU de d onde captar la siguiente instrucci on tras completarse la ejecuci on de la instrucci on actual. En la mayor a de los casos la siguiente instrucci on a captar sigue inmediatamente la instrucci on en ejecuci on. En tales casos no hay referencia expl cita a la siguiente instrucci on. Cuando sea necesaria una referencia expl cita, debe suministrarse la direcci on de memoria principal o virtual.
Dependiendo del tipo de instrucción se evaluará su modo de representación y ejecución.
En la figura 9.3 se puede comparar los diferentes tipos de instrucciones con sus direcciones y en que se diferencian cada una de ellas. En la tabla 9.1 se puede ver como se interpretan las instrucciones de acuerdo al número de direcciones.
Es el medio que tiene el programador para controlar la CPU.
Revisar como es que ocurre que el usuario ingresa siempre números decimal y la salida también es decimal, si la computadora trabaja con binarios, referirse al decimal empaquetado. Revisar la tabla 6.1 que muestra la representación de estos tipos de datos
En la tabla 9.3 se presenta los subtipos de operaciones a realizar dependiendo del tipo de operación. .
En la tabla 10.11 se muestran ejemplos de las instrucciones de transferencia de datos más comunes. Hay algunas acciones que ejerce la CPU para varios tipos de operaciones, estas se resumen en la figura 9.4 Transferencias de datos. Las instrucciones que trans eren datos entre memoria y registros se denominan instrucciones de transferencia de datos. Para acceder a una palabra en memoria, la instrucci on debe proporcionar la direcci on de memoria. La instrucci on de transferencia que mueve datos de memoria a alg un registro se denomina carga (load). La instrucci on complementaria, llamada almacenar (store), trans ere datos de un registro a memoria.
El ejecutar una instrucción aritmética puede implicar operaciones de transferencia de datos para ubicar los operandos como entradas a la ALU. Aritm eticas. La mayor a de las m aquinas proporcionan las operaciones artim eticas b asicas de suma, resta, multiplicaci on y divisi on. Estas se tienen siempre para n umeros enteros con signo y, a menudo, para n umeros en coma flotante. Otras operaciones posibles son, por ejemplo, c alculo del valor absoluto, cambiar el signo al operando o incrementar o decrementar el operando
Hacer referencia a la figura 9.5 para diferenciar su funcionamiento. L ogicas. La mayor a de las m aquinas tambi en disponen de diversidad operaciones para manipular bits individuales dentro de una palabra o de otra unidad direccionable. Est an basadas en operaciones booleanas.
De entrada/salida. Las instrucciones de E/S se pueden hacer corresponder f acilmente con las ordenes de E/S que la CPU env a a un m odulo de E/S, a menudo hay una simple relaci on de uno a uno.
De control del sistema. Estas instrucciones son, por lo general, instrucciones privilegiadas que pueden ejecutarse s olo mientras el procesador est a en un estado privilegiado concreto o est a ejecutando un programa de una zona privilegiada espec ca de memoria. Normalmente estas instrucciones est an reservadas para el sistema operativo.
De control de flujo. En todos los tipos de operaciones discutidos hasta aqu , la siguiente instrucci on a ejecutar es la inmediatamente posterior, en memoria, a la instrucci on en curso. Sin embargo, una fracci on signi cativa de las instrucciones de cualquier programa tienen como misi on cambiar la secuencia de ejecuci on de instrucciones. La operaci on que realiza la CPU es actualizar el contador de programa para que contenga la direcci on de alguna de las instrucciones que hay en memoria. Las operaciones de control de ujo que se pueden encontrar en los repertorios de instrucciones son: Instrucciones de bifurcaci on, tambi en llamadas de salto". Tienen como uno de sus operandos la direcci on de la siguiente instrucci on a ejecutar. Instrucciones de salto condicional. Se efect ua la bifurcaci on (se actualiza el contador de programa con la direcci on especi cada en el operando) s olo si se cumple una condici on dada, en caso contrario se ejecuta la instrucci on siguiente de la secuencia (se incrementa el contador de programa de la forma habitual). Instrucciones de llamada a subrutina. En cualquier punto del programa se puede invocar o llamar a la subrutina. Se ordena al computador que pase a ejecutar la subrutina y que retorne despu es al punto en que tuvo lugar la llamada. El uso de subrutinas requiere por tanto dos instrucciones b asicas: una instrucci on de llamada, que produce una bifurcaci on desde la posici on actual al comienzo de la subrutina, y una instrucci on de retorno de la subrutina al lugar desde el que se llam o.