68000
Los registros que contiene el 68000 son en su práctica totalidad de 32 bits.
Estos de componen de:
8 Registros de datos de uso general D0-D7 32 bits
7 Registros de direcciones de uso general A0-A6 32 bits
1 Registro de direcciones usado como puntero de pila A7 32 bits
1 Registro de direcciones usado como contador de programa PC 32 bits
1 Registro de estado que contiene los códigos de condición y un byte de sistema SR 16 bits
Registros de datos: Dn
Los registros de datos se usan para almacenar aquellos datos que se van a manipular en las siguientes instrucciones del programa o subrutina en curso. Por otra parte, al tener una longitud de 32 bits, permiten trabajar en formatos de 32, 16 u 8 bits, según indique la instrucción.
Registros de direcciones: An
Los registros de direcciones se utilizan para referenciar posiciones de memoria donde se han de acceder datos o donde se ha nde escribir. Se ha de cuidar sin embargo el tipo de dirección que se pretende acceder según el formato (16, 32 bits) del operando. Cuando se utilizan como operando destino, todo el registro es modificado, independientemente del formato del la dirección, realizando extensión de signo.
Puntero a Pila: A7 - SP
El registro de pila, o puntero de pila, sirve para tener referenciada la posición de memoria en que se encuentra el último dato introducido en la pila.
La pila es un concepto muy importante y de conocimiento obligatorio.
El A7 sin embargo posee un rasgo único en él y es que se encuentra dividido en 2 registro independientes de 32 bits: uno es el puntero de usuario (USP) y el otro el de supervisor (SSP). Se accede automáticamente a un registro o a otro según el micro se encuentre en un modo u otro.
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 0 | 0 | 0 | X | N | Z | V | C |
Acarreo, C:
Este bit se pone a 1 cuando se produce un acarreo a consecuencia de una instrucción.
Desbordamiento, V:
Este bit denota al ponerse a 1 que la última operación ha efectuado un desbordamiento en el dato.
Zero, Z:
Este bit indica que el último operando o resultado ha sido 0. Para ello se coloca a 1.
Negativo, N:
Indica el signo del último operando/resultado con 1 si ha sido negativo.
Extensión, X:
Se comporta como un bit de acarreo. En la mayoría de las instruuciones, un cambio en C implica el mismo cambio en X pero existen instrucciones en las que esto no ocurre.
Por otra parte se encuentra el byte del sistema, que contiene información vital para el funcionamiento del micro. Este byte solo puede ser modificado en modo Supervisor.
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | T | S | I2 | I1 | I0 |