Un registro (en inglés : processor register ), en informática y en la arquitectura de las computadoras , es una pequeña parte de la memoria que se utiliza para acelerar la ejecución de los programas proporcionando un acceso rápido a los valores utilizados con mayor frecuencia y/o tipicidad. , los valores actualmente en uso en una parte particular de un cálculo.
El término suele utilizarse para referirse exclusivamente al grupo de registros que pueden ser direccionados directamente por las instrucciones de entrada y salida del microprocesador . Más propiamente, estos registros se denominan "registros arquitectónicos". Por ejemplo, en la arquitectura x86 existe un conjunto de ocho registros que pueden ser utilizados por instrucciones en lenguaje máquina , pero la CPU contendrá muchos más registros para uso interno o con funciones especiales.
Los registros constituyen el punto más alto en la jerarquía de la memoria y son el mecanismo más rápido para que el sistema manipule datos. Los registros normalmente se miden por la cantidad de bits que pueden contener (por ejemplo, registros de 8 bits o registros de 32 bits ). Actualmente, los registros normalmente se implementan con archivos de registro , pero en el pasado se implementaron utilizando flip-flops individuales , memoria de núcleo de ferrita de alta velocidad , memoria de película delgada y varias otras formas.
La mayoría de las arquitecturas informáticas modernas ( RISC , o más genéricamente arquitecturas de carga y almacenamiento ) se basan en una arquitectura de tubería que se beneficia de la limitación del acceso a la memoria para cargar y almacenar instrucciones únicamente, utilizando únicamente registros y constantes para la ejecución de todas las demás instrucciones.
Hay muchas clases de registros:
Los registros de hardware a nivel de firmware son similares a los registros del procesador, pero están presentes externamente a las CPU.
Los registros del microprocesador proporcionan un nivel de memoria más rápido y más bajo que la memoria principal y realizan principalmente las dos funciones siguientes:
El número de registros varía significativamente entre las distintas arquitecturas según la edad de la ISA y el tipo de arquitectura: por ejemplo, las arquitecturas RISC tienden a estar equipadas con una gran cantidad de registros, mientras que las arquitecturas CISC que son más antiguas en promedio tienden a tener una pequeño número de registros, aunque los últimos procesadores a menudo tienen un gran número de registros ocultos que se utilizan para implementar la ejecución superescalar de programas.
Procesador | Registros completos | registros FPU |
---|---|---|
Intel Core dúo | 8 | 8 |
Intel Core 2 dúo | dieciséis | dieciséis |
pentium 4 | 8 | 8 |
Pentium 4 con EM64T | dieciséis | dieciséis |
atlón 64 | dieciséis | dieciséis |
MP de Athlon | 8 | 8 |
Opterón 240 | dieciséis | dieciséis |
Itanio 2 | 128 | 128 |
UltraSPARC IIIi | 32 | 32 |
POTENCIA3 | 32 | 32 |
MOS 6502 | 3 | 0 |