Vous êtes sur la page 1sur 4

Registre de processeur - Wikipdia

http://fr.wikipedia.org/wiki/Registre_(informatique)

Registre de processeur
Un registre est un emplacement de mmoire interne un processeur. Les registres se situent au sommet de la hirarchie mmoire : il s'agit de la mmoire la plus rapide d'un ordinateur, mais dont le cot de fabrication est le plus lev car la place dans un microprocesseur est limite. Leur capacit dpasse donc rarement quelques dizaines d'octets. Une architecture externe de processeur dnit un ensemble de registres, dits architecturaux, qui sont accessibles par son jeu d'instructions. Ils constituent l'tat externe (architectural) du processeur. Cependant, une ralisation donne d'une architecture externe (microarchitecture) peut contenir un ensemble dirent de registres, qui sont en gnral plus nombreux que les registres architecturaux. Ils stockent non seulement l'tat externe du processeur, mais aussi celui de sa microarchitecture : valeurs oprandes, indicateurs, etc. Ce dernier tat est utilis exclusivement par la microarchitecture, et n'est pas visible par le jeu d'instructions 1 (architecture) . La plupart des architectures modernes sont qualies de load-store : les programmes transfrent d'abord des donnes de la mmoire centrale vers des registres, puis eectuent des oprations sur ces registres, et enn transfrent le rsultat en mmoire centrale.

Sommaire
1 Utilisation des registres 1.1 Registres spcialiss 1.2 Registres gnraux 2 Rfrencement des registres 2.1 Registres non-rfrenables 2.2 Noms de registres 2.3 Registres adressables 3 Ralisation physique 4 Notes et rfrences 5 Voir aussi 5.1 Articles connexes

Utilisation des registres


Registres spcialiss
1 of 4 19/12/2013 08:50

Registre de processeur - Wikipdia

http://fr.wikipedia.org/wiki/Registre_(informatique)

Sur de nombreux processeurs, les registres sont spcialiss et ne peuvent contenir qu'un type bien prcis de donnes. On rencontre souvent les classes de registres suivantes : les registres entiers, chargs de stocker des nombres entiers (et ventuellement des adresses) ; les registres ottants, qui stockent des nombres virgule ottantes ; les registres d'adresses : sur certains Les registres d'un processeur Motorola processeurs, les adresses mmoires 68000. manipuler sont places dans ces registres ddis ; les registres d'Index, qui servaient faciliter certains calculs d'adresses sur de vielles architectures ; les registres prdicats, des registres qui stockent des rsultats de comparaisons et d'instructions de tests diverses ; Un processeur contient souvent des registres spcialiss, prsents en un seul exemplaire. On trouve parmi ceux-ci : compteur ordinal (CO) : indique l'emplacement de la prochaine instruction tre excute (synonymes : compteur de programme, pointeur d'instruction) ; registre d'tat (PSW pour Processor Status Word) : dcrit l'tat du processeur ; il est le plus souvent interprt bit bit (synonyme : drapeaux) ; pointeur de pile : indique la position du prochain emplacement disponible dans la pile mmoire ;

Registres gnraux
Sur certaines architectures, tout ou partie des registres spcialiss sont remplacs par un ensemble de registres d'usage gnral interchangeables (parfois nots R0, R1, etc.). Ceux-ci peuvent stocker indiremment adresses, entiers, ottants, etc. Par exemple, le Motorola 68000 dispose de 8 registres de donnes banaliss (D0 D7) et de 8 registres d'adresses (A0 A7, banaliss sauf A7 qui sert de pointeur de pile). Sur la majorit des processeurs, ces registres gnraux ne sont pas les seuls registres du processeur, qui contient aussi des registres spcialiss comme un compteur ordinal ou un registre d'tat. Mais sur certains processeurs, il se peut que ces registres soient malgr tout des registres gnraux, adressables comme tous les autres registres. Il devient alors possible d'aller crire ou lire directement leur contenu sans restrictions. Cela peut servir pour faciliter l'implmentation des branchements indirects ou relatifs (si le compteur ordinal devient un registre gnral).

2 of 4

19/12/2013 08:50

Registre de processeur - Wikipdia

http://fr.wikipedia.org/wiki/Registre_(informatique)

Rfrencement des registres


Sur les processeurs disposant de plusieurs registres de mme type (des registres entiers, ottants ou gnraux), certaines instructions peuvent manipuler indiremment certains registres. Dans ce cas, elles doivent prciser quel est le registre manipuler. Slectionner un registre pour manipulation peut s'eectuer de diverses manires au niveau du code machine.

Registres non-rfrenables
Certains registres n'ont pas besoin d'tre slectionnes. On les manipule implicitement avec certaines instructions. Le seul moyen de manipuler ces registres est de passer par une instruction approprie. C'est le cas pour le Program Counter : part sur certains processeurs vraiment trs rares, on ne peut modier son contenu qu'en utilisant des instructions de branchements. Idem pour le registre d'tat, manipul implicitement par les instructions de comparaisons et de test, et certaines oprations arithmtiques. Idem aussi pour le stack pointer sur certaines architectures.

Noms de registres
Autre possibilit : numroter certains registres. Ce numro est l'quivalent des adresses pour la mmoire RAM. Ce numro est ce qu'on appelle un nom de registre. Ce n'est rien d'autre qu'une suite de bits attribue chaque registre, chaque registre se voyant attribuer une suite de bits dirente. Celle-ci sera intgre toutes les instructions devant manipuler ce registre, an de slectionner celui-ci

Registres adressables
Il est possible de faire correspondre les registres avec des adresses mmoire, typiquement partir de 0 (cest--dire que les cases mmoire d'adresse 0 31 pourront correspondre aux registres R0 R31). C'est par exemple le cas des 16 registres du PDP-10. Les programmeurs astucieux dsirant optimiser le temps d'excution d'une boucle de code avaient donc la possibilit de la stocker dans les registres. Cette mthode videmment marginale et dpendante de l'architecture de l'ordinateur montre la versatilit des registres gnraux.

Ralisation physique
Divers procds ont t retenus pour la ralisation des registres, notamment de la RAM statique, d'abord sous forme de bascules individuelles, puis plus rcemment sous forme de bancs de registres.

Notes et rfrences
3 of 4 19/12/2013 08:50

Registre de processeur - Wikipdia

http://fr.wikipedia.org/wiki/Registre_(informatique)

1. B. Shriver et B. Smith, The Anatomy of a High-Performance Microprocessor : A Systems Perspective. The IEEE Computer Society, 1998, p. 88.

Voir aussi
Articles connexes
Banc de registres Fentre de registres Processeur Microprocesseur Microcontrleur Registre dcalage Registres du x86

Ce document provient de http://fr.wikipedia.org /w/index.php?title=Registre_de_processeur&oldid=96544441 . Dernire modication de cette page le 10 septembre 2013 10:25. Droit d'auteur : les textes sont disponibles sous licence Creative Commons paternit partage lidentique ; dautres conditions peuvent sappliquer. Voyez les conditions dutilisation pour plus de dtails, ainsi que les crdits graphiques. En cas de rutilisation des textes de cette page, voyez comment citer les auteurs et mentionner la licence. Wikipedia est une marque dpose de la Wikimedia Foundation, Inc., organisation de bienfaisance rgie par le paragraphe 501(c)(3) du code scal des tats-Unis.

4 of 4

19/12/2013 08:50

Vous aimerez peut-être aussi