Next: Types de données Up: Jeu d'instructions Previous: Architecture 32 ou

Registres vus par le jeu d'instructions

Le MIPS R10000


Le jeu d'instructions du MIPS R10000 manipule 32 registres généraux de 64 bits et 32 registres flottants de 64 bits ; en simple précision, ces registres sont vus comme des registres de 32 bits. Deux registres spéciaux (LO et HI) conservent temporairement le résultat de la multiplication ou de la division. Les valeurs de ces registres peuvent être transférées dans des registres généraux par les instructions MFLO et MFHI. Le MIPS R10000 implémente aussi des registres 32 bits de contrôle et d'état tels que le Program Counter (PC) ou le Processor State Register (PSR) qui ne sont accessibles qu'en mode noyau.

L'UltraSPARC


L'UltraSPARC manipule 32 registres entiers généraux et 32 registres flottants ainsi qu'un grand nombre de registres d'état et de contrôle.

L'originalité du jeu d'instructions SPARC est d'implémenter des fenêtres de registres (8 fenêtres de 24 registres). À un instant donné, une instruction entière peut accéder aux 8 registres entiers généraux (R0...R7) et aux 24 registres de la fenêtre courante (8 registres d'entrées e0...e7, 8 registres locaux l0...l7 et 8 registres de sorties s0...s7). Un pointeur de fenêtre P sur le fichier de registres maintient la correspondance : i0...i7 sont en fait les registres R(16P+8)...R(16P+15), etc. Ceci est illustré figure .

L'intérêt de ces fenêtres est de permettre l'appel et le retour de procédures sans générer de sauvegardes mémoire.

Le jeu d'instructions manipule aussi 32 registres flottants 64 bits (32 bits utilisés pour les opérations simple précision). Ces registres peuvent aussi être considérés comme 16 registres de 128 bits quadruple précision.

À noter que l'UltraSPARC implémente 4 jeux de 8 registres entiers généraux de 64 bits : 8 registres sont utilisés pour l'exécution normale du programme, 8 registres pour l'exécution des procédures d'interruptions, 8 registres pour certaines exceptions de l'unité de gestion mémoire (MMU) et 8 registres pour toutes les autres exceptions. Ceci permet de traiter la plupart des exceptions sans générer de sauvegarde de registres.

Le PentiumPro


Le jeu d'instructions du PentiumPro fournit 16 registres au programmeur : 8 registres généraux de 32 bits dérivés des 8 registres généraux 16 bits du microprocesseur 8086 ; 6 registres de segments de 16 bits qui déterminent, à un instant donné, le segment de mémoire valide (CS : Code Segment, SS : Stack Segment, DS : Data Segment, ES, FS et GS) ; enfin, 2 registres de 32 bits assurent le contrôle du microprocesseur et fournissent des informations sur son état.

Les registres flottants du jeu d'instructions du PentiumPro sont définis sous forme d'une pile de 8 registres de 80 bits.



Next: Types de données Up: Jeu d'instructions Previous: Architecture 32 ou


flloansi@IRISA.irisa.fr
Tue Jun 4 09:57:56 MET DST 1996