- I 32 Registri, indicizzati da 0 a 31, della CPU principale:
- Registro
$zero ($0), contenente un valore costante pari a 0 ed immutabile
- Registro
$at ($1), usato dalle pseudo-istruzioni e dall’assemblatore
- Registri
$v0 e $v1 ($2, $3), utilizzati per gli output delle funzioni utilizzate nel programma
- Registri dal
$a0 al $a3 ($4, …,$7) utilizzati per gli input delle funzioni
- Registri dal
$t0 al $t7 ($8, …, $15), utilizzati per valori temporanei
- Registri dal
$s0al $s7 ($16, …, $23), utilizzati per valori più ricorrenti
- Registri dal
$t8 al $t9 ($24, $25), utilizzati per valori temporanei
- Registri
$k0 e $k1 ($26, $27), utilizzati dal Kernel del Sistema Operativo
- Registro
$gp ($28), ossia Global Pointer, utilizzato per la gestione della memoria dinamica
- Registro
$sp ($29), ossia Stack Pointer, utilizzato per la gestione dello Stack delle funzioni
- Registro
$fp ($30), ossia Frame Pointer, utilizzato dalle funzioni di sistema
- Registro
$ra ($31), ossia Return Address, utilizzato come puntatore di ritorno dalle funzioni
