Ejemplos de Organizacio N de Registros de CPU Reales

También podría gustarte

Está en la página 1de 2

Ejemplos de organizacion de

registros de CPU reales


Resulta instructivo examinar y comparar las organizaciones de registros de sistemas
análogos. En esta sección, examinamos dos microprocesadores de 16 bits que fueron diseñados
aproximadamente al mismo tiempo: el Motorola MC68000 [STRI79] y el lotel 8086 [MORS78]. Las
Figuras 12.3a y b representan la organización de registros de cada uno de ellos; los registros
estrictamente internos, tales como el registro de dirección de memoria, no se muestran.

El MC68000 distribuye sus registros de 32 bits en ocho de datos y nueve de direcciones.


Los ocho registros de datos se usan principalmente para manipulación de datos y también se usan
en direccionamiento como registros índice. El ancho de los registros permite operaciones con
datos de 8, 16 Y 32 bits, según determine el código de operación. Los registros de direcciones
contienen direcciones de 32 bits (no hay segmentación); dos de estos registros se usan también
como punteros de pila, uno para los usuarios y el otro para el sistema operativo, dependiendo del
modo de ejecución en curso. Los dos registros se referencian como 7, dado que solo uno de ellos
puede usarse en un instante dado. El MC68000 también incluye un contador de programa de 32
bits y un registro de estado de 16 bits. El equipo de Motorola quiso un repertorio de instrucciones
muy regular, sin registros de uso especial.

Su interés por la eficiencia del código los condujo a dividir los registros en dos
componentes funcionales, ahorrando un bit en cada campo de especificación de registro. Parece
un compromiso razonable entre generalidad total y compacidad del código.

El Intel 8086 usa un enfoque diferente para la organización de los registros. Cada uno de
los registros tiene un uso especial, aunque algunos registros se pueden emplear también para un
uso general. El 8086 contiene cuatro registros de datos de 16 bits que son direccionables como
registros de bytes o como registros de 16 bits, y cuatro registros punteros e índices de 16 bits. Los
registros de datos pueden utilizarse como de uso general en algunas instrucciones. En otras, los
registros se usan implícitamente. Por ejemplo, una instrucción de multiplicación siempre usa el
acumulador. Los cuatro registros punteros se usan también implícitamente en algunas
operaciones; cada uno contiene un desplazamiento dentro de un segmento. Hay también cuatro
registros de segmento de 16 bits. Tres de los cuatro registros de segmento se usan de una forma
dedicada e implícita para apuntar al segmento de la instrucción en curso (útil para instrucciones de
salto), a un segmento que contenga datos, y a un segmento que contenga una pila,
respectivamente. Estos usos dedicados e implícitos proporciona una codificación compacta con el
coste de una flexibilidad reducida. El 8086 incluye también un puntero de instrucciones y un
conjunto de indicadores de un bit de estado y de control.

Debe quedar claro qué es lo significativo de esta comparación. No hay, por el momento,
una filosofía universalmente aceptada sobre la mejor forma de organizar los registros del
procesador [TOON81). Igual que ocurre en el diseño global del repertorio de instrucciones y en
algunos de los aspectos del diseño del procesador, se trata más bien de una cuestión de opinión y
de gustos.

En la Figura 12.3c se ilustra un segundo aspecto instructivo acerca del diseño de la


organización de los registros. Esta figura muestra la organización de los registros visibles por el
usuario en el Intel 80386 [ELAY85), un microprocesador de 32 bits diseñado como una ampliación
del 8086'. El 80386 usa registros de 32 bits. No obstante, para proporcionar compatibilidad
ascendente para los programas escritos en la primera máquina, el 80386 conserva la organización
de registros original integrada en la nueva organización. Dada esta restricción en el diseño, los
arquitectos de los procesadores de 32 bits han limitado la flexibilidad al diseñar la organización de
los registros.

También podría gustarte