Registre
Un registre est une zone de stockage temporaire intégrée à un CPU. Certains registres sont utilisés en interne et ne peuvent pas être consultés depuis l’extérieur du processeur, tandis que d’autres sont accessibles à l’utilisateur. La plupart des architectures de CPU modernes comprennent ces deux types de registres.
Les registres internes comprennent le registre d’instructions (IR), le registre tampon mémoire (MBR), le registre de données mémoire (MDR) et le registre d’adresses mémoire (MAR). Le registre d’instructions récupère les instructions dans le compteur ordinal (PC) et conserve chaque instruction pendant son exécution par le processeur. Les registres mémoire servent à transmettre les données de la mémoire au processeur. La durée de stockage des registres internes est extrêmement courte, car ils conservent souvent les données pendant moins d’une milliseconde.
Les registres accessibles à l’utilisateur sont plus grands que les registres internes et conservent généralement les données plus longtemps. Par exemple, un registre de données peut stocker des valeurs individuelles référencées par un programme en cours d’exécution. Un registre d’adresses contient des adresses mémoire, qui désignent différents blocs de mémoire au sein de la RAM du système. De nombreux CPU disposent désormais de registres à usage général (GPR), qui peuvent contenir à la fois des données et des adresses mémoire.
Le nombre et la taille des registres varient selon l’architecture du CPU. Certains processeurs possèdent 8 registres, tandis que d’autres en ont 16, 32 ou davantage. Pendant de nombreuses années, les registres étaient de 32 bits, mais beaucoup ont désormais une taille de 64 bits. Un registre de 64 bits est nécessaire pour un processeur de 64 bits, car il permet au CPU d’accéder à des adresses mémoire de 64 bits. Un registre de 64 bits peut également stocker des instructions de 64 bits, qui ne peuvent pas être chargées dans un registre de 32 bits. Par conséquent, la plupart des programmes écrits pour des processeurs de 32 bits peuvent fonctionner sur des ordinateurs de 64 bits, tandis que les programmes de 64 bits ne sont pas rétrocompatibles avec les machines de 32 bits.
Testez vos connaissances