Repertorio de instrucciones

Una instrucción expresada en lenguaje de máquina se denomina instrucción de nivel máquina. 

Más allá de cierto punto, una funcionalidad adicional puede proporcionar algo más de comodidad pero no añade nada a las capacidades fundamentales de la máquina. El grado con el que el diseño de una máquina debe aprovechar este hecho ha conducido a dos filosofáis distintas de arquitectura de procesador:

  1. Reduced Instruction Set Computer (RISC): un procesador debe diseñarse para ejecutar un conjunto mínimo de instrucciones en lenguaje de máquina. Las máquinas de este tipo son más eficientes, rápidas y más baratas.
  2. Complex Instruction Set Computer (CISC): procesadores con capacidad de ejecutar un gran número de instrucciones complejas, aún cuando muchas de ellas sean técnicamente redundantes. Los procesadores más complejos pueden enfrentarse mejor a la complejidad cada vez mayor del software actual.

Transferencia de datos

Instrucciones que solicitan el movimiento de datos desde una ubicación a otra. Una solicitud para llenar un registro de uso general con el contenido de una celda de memoria se suele denominar la instrucción LOAD; a la inversa, una solicitud para transferir el contenido de un registro a una celda de memoria se denomina instrucción STORE.

un grupo importante de instrucciones dentro de la categoría de transferencia de datos está formado por los comandos utilizados para comunicarse con dispositivos externos al contexto definido por el procesador y la memoria principal. Puesto que estas instrucciones se encargan de generar las actividades entrada/salida de la máquina se denominan instrucciones E/S.

Aritmético/Lógico

Este grupo está compuesto por aquellas instrucciones que le dicen a la unidad de control que debe solicitad cierta actividad dentro de la unidad aritmético/lógica. 

Operaciones:

  • Operaciones booleanas
    • AND
    • OR
    • XOR
  • SHIFT
  • ROTATE
  • Otras

Control

Compuesto por aquellas instrucciones que dirigen la ejecución del programa en lugar de la manipulación de datos.

Ejemplo de lenguaje de máquina

Supongamos que la máquina dispone de 16 registros de uso general y de 256 celdas en la memoria principal, cada una de ellas con una capacidad de 8 bits. Para propósitos de referencia, vamos a etiquetar los registros con los valores de 0-15 y la direcciones de las celdas de memoria con los valores 0-255. Por comodidad, vamos a considerar que estas etiquetas y direcciones son valores representados en base 2 y vamos a expresar los patrones de bits resultantes en notación hexadecimal. Etiquetemos los registros de 0-F y las direcciones de las celdas de memoria de 00-FF.

La versión codificada de una instrucción en lenguaje de máquina está compuesta de dos partes: 

  • Campo código de operación: El patrón de bits que aparece en este campo nos indica cuál es la operación elemental solicitada por la instrucción.
  • Campo operando: Los patrones de bit contenidos en este campo proporcionan información más detallada acerca de la operación especificada por el código de operación. 

Decodificación de la instrucción 35A7

Suma de valores almacenados en la memoria

Versión codificada de suma de valores almacenados en la memoria

Comentarios
* No se publicará la dirección de correo electrónico en el sitio web.
ESTE SITIO FUE CONSTRUIDO USANDO