Les 32 registres de MIPS

Programming, Computer Architecture, Assembly Language · course

Browse all programmation documents

© Jacques Berger 2010

Les 32 registres de MIPS

Nom

Numéro Usage

Préserver lors d'un

appel de fonction

$zero

$at

$v0

$v1

$a0

$a1

$a2

$a3

$t0

$t1

$t2

$t3

$t4

$t5

$t6

$t7

$s0

$s1

$s2

$s3

$s4

$s5

$s6

Advertisement

$s7

$t8

$t9

$k0

$k1

$gp

$sp

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

Advertisement

22

23

24

25

26

27

28

29

La valeur constante 0.

Réservé pour l'assembleur

Valeur de retour

Valeur de retour

Argument pour un appel de fonction

Argument pour un appel de fonction

Argument pour un appel de fonction

Argument pour un appel de fonction

Registre temporaire

Registre temporaire

Registre temporaire

Registre temporaire

Registre temporaire

Registre temporaire

Registre temporaire

Registre temporaire

Registre sauvegardé

Registre sauvegardé

Registre sauvegardé

Registre sauvegardé

Registre sauvegardé

Advertisement

Registre sauvegardé

Registre sauvegardé

Registre sauvegardé

Registre temporaire supplémentaire

Registre temporaire supplémentaire

Réservé pour le système d'exploitation

Réservé pour le système d'exploitation

Global pointer

Pointeur vers les données statiques du programme

(ex. Variables globales)

Stack pointer

Il faut soustraire de $sp pour ajouter à la stack,

-

Non

Non

Non

Non

Non

Non

Non

Non

Non

Non

Non

Non

Non

Non

Non

Oui

Advertisement

Oui

Oui

Oui

Oui

Oui

Oui

Oui

Non

Non

Non

Non

Oui

Oui

© Jacques Berger 2010

additionner pour en enlever.

$fp

$ra

30

31

Frame pointer

Pointeur sur le cadre d'appel lors d'un appel de

fonction

Return address

L'adresse de retour d'un appel de fonction

Oui

Oui

Les registres en gras sont ceux qu'il faut sauvegarder lors d'un appel de fonction.

Les registres en rouge sont ceux qu'il vaut mieux ne jamais modifier directement.