You are on page 1of 4

FORMATOS DE INSTRUCCIN La representacin de la instruccin en la computadora se denomina formato.

Sabemos que un programa est formado por una secuencia de instrucciones, cada una de las cuales especifica una accin particular. La parte esencial de la instruccin es lo que llamamos cdigo de operacin, que seala la accin que debe ejecutarse. Muchas instrucciones contienen adems los datos que usan o especifican donde estn. As, por ejemplo, una instruccin que compare dos caracteres para ver si son iguales, debe especificar qu caracteres se han de comparar. Todo lo relativo a la especificacin de dnde est el dato o dnde hay que almacenar el resultado se llama direccionamiento. Normalmente la estructura fsica y lgica de la computadora se describe en los manuales de referencia que se proporcionan con el sistema. Tales manuales explican la construccin interna de la CPU, incluyendo los registros de procesador disponibles y sus posibilidades lgicas. Tambin listan todas las instrucciones que se implantan con hardware, especifican su formato en cdigo binario y proporcionan una definicin precisa de cada instruccin. Por lo general, una computadora tendr varios formatos de cdigos de instrucciones. Una funcin de la unidad de control dentro de la CPU es interpretar cada cdigo de instruccin y proporcionar las funciones de control necesarias para procesar la instruccin. Normalmente el formato de una instruccin se muestra en una caja rectangular que simboliza los bits de la instruccin conforme aparecen en la palabra de memoria o en un registro de control. Los bits de la instruccin se dividen en grupos llamados campos. Los campos ms comunes que se encuentran en los formatos de instrucciones son: 1. Un campo de cdigo de operacin que especifica la operacin que se va a ejecutar. 2. Un campo de direccin que representa una direccin de memoria o un registro de procesador. 3. Un campo de modo que especifica la manera en que se determina el operando o la direccin efectiva.

En ocasiones se emplean otros campos especiales bajo ciertas circunstancias, por ejemplo un campo que proporciona el nmero de corrimientos en una instruccin de tipo corrimiento.

El campo de cdigo de operacin de una instruccin es un grupo de bits que define varias operaciones de procesador, como sumar, restar, complementar y corrimiento. Las operaciones ms comunes disponibles en instrucciones de computadora se listan y analizan. Los bits que definen el campo de modo de una instruccin especifican diversas alternativas para escoger los operandos de la direccin dada. Los diferentes modos de direccionamiento que se han formulado para las computadoras digitales.

Las operaciones especificadas mediante instrucciones de computadora se ejecutan sobre algunos datos almacenados en la memoria o en registros de procesador. Los operandos que residen en la memoria se especifican mediante sus direcciones de memoria. Los operandos que residen en un registro de procesador se especifican con una direccin de registro. Una direccin de registro es un nmero binario de k bits que define uno de los registros en la CPU. Por lo tanto, una CPU con 16 registros de procesador del RO al R15 tendr un campo de direccin de registro de 4 bits. Por ejemplo, el nmero binario 0101, representar el registro R5. Las computadoras pueden tener instrucciones de diferentes tamaos que contengan una cantidad variable de direcciones. La cantidad de campos de direcciones en el formato de instruccin de una computadora depende de la organizacin interna de sus registros. La mayora de las computadoras caen en uno de tres tipos de organizacin de CPU: 1. Organizacin de acumulador nico. 2. Organizacin de registro general. 3. Organizacin de pila. TIPOS DE INSTRUCCIONES De procesamiento: instrucciones aritmticas y lgicas Almacenamiento de datos: memoria. Transferencia de datos: E/S. Control: comprobacin y bifurcacin. Todas las instrucciones se ejecutan con un registro de acumulador relacionado. El formato de instruccin en este tipo de computadora utiliza un campo de direccin. Por ejemplo, la instruccin que especifica una suma aritmtica se define mediante una instruccin del lenguaje ensamblador como ADD X Donde X es la direccin del operando. La instruccin ADD en este caso da como resultado la operacin AC -- AC + M[XJ. AC es el registro acumulador yM[X] representa la palabra de memoria que se localiza en la direccin X.

Para representar la operacin Rl < R2 + R3. La cantidad de campos de direccin en la instruccin puede reducirse de tres a dos si el registro destino es igual a uno de los registros fuente. Por lo tanto, la instruccin

ADD Rl, R2

Representara la operacin Rl Rl + R2. Slo necesitan especificarse las direcciones de registro para Rl y R2 en esta instruccin.

Las computadoras con mltiples registros de procesador utilizan la instruccin de mover con un mnemnico MOV para representar una instruccin de transferencia. Por lo tanto, la instruccin

MOV Rl, R2

Representa la transferencia Rl < R2 ( R2 Rl), dependiendo de la computadora en particular). Entonces, las instrucciones de tipo de transferencia necesitan dos campos de direccin para especificar la fuente y el destino.

Las computadoras de tipo de registro general emplean dos o tres campos de direccin en su formato de instrucciones. Cada campo de direccin puede especificar un registro de procesador o una palabra de memoria. Una instruccin representada mediante

ADD Rl, X

Especificara la operacin Rl < Rl + M[X]. Posee dos campos de direccin, uno para el registro Rl y el otro para la direccin de memoria X.

Las computadoras con organizacin de pila envan instrucciones PUSH y POP las cuales requeriran un campo de direccin. Por lo tanto la instruccin PUSH X Escribir la palabra de la direccin X a la parte superior de la pila. El apuntador de pila se actualiza en forma automtica. Las instrucciones de tipo operacin no necesitan un campo de direccin en las computadoras organizadas con pilas. Esto se debe a que la operacin se ejecuta sobre los dos datos que estn en la parte superior de la pila. La instruccin ADD En una computadora con pila consta de un solo cdigo de operacin sin campo de direccin. Esta operacin lee (pop) los dos nmeros superiores de la pila, los suma y

escribe (push) la suma dentro de la pila. No es necesario especificar operandos con un campo de direccin porque es implcito que todos estn en la pila.

La mayora de las computadoras caen en uno de estos tres tipos de organizacin que se acaban de describir. Algunas computadoras combinan caractersticas de ms de una estructura organizaional. Por ejemplo, el microprocesador Intel 8080 tiene siete registros de CPU, uno de los cuales: es un registro acumulador. Como consecuencia, el procesador tiene algunas de las caractersticas de un tipo de registro general y algunas de las de un tipo acumulador. Todas las instrucciones aritmticas y lgicas, al igual que las instrucciones de carga y almacenamiento, utilizan el registro acumulador, por lo que estas instrucciones slo tienen un campo de direccin. Por otra parte, las instrucciones que transfieren datos entre los siete registros del procesador tienen un formato que contiene dos campos de direccin de registros. Adems, el procesador Intel 8080 tiene un apuntador de pila e instrucciones push y pop desde una pila de memoria. Sin embargo, el procesador no tiene instrucciones de tipo de direccionamiento cero, las cuales son caractersticas de una CPU organizada con pila.

Para dar un ejemplo de la influencia de la cantidad de direcciones sobre los programas de computadora, evaluaremos el siguiente enunciado aritmtico

X = (A + B)*(C + D)

Utilizando cero, uno, dos o tres instrucciones de direccionamiento. Emplearemos los smbolos ADD, SUB, MUL y DIV para las cuatro operaciones aritmticas; MOV para la operacin de tipo transferencia; y LOAD y STORE para transferencias hacia y desde la memoria y el registro AC. Consideraremos que los operandos en las direcciones de memoria A, B, C y D y e resultado deben almacenarse en la memoria en la direccin X.

You might also like