MIPS has 32 x 32-bit registers

the MIPS convention is to use two-character names following a dollar sign to represent a register:

Assembler names

for example, if we want to calculate f = (g + h) - (i + j); in c, we don’t need to save intermediate values (g + h), (i + j) . Thus we can write as:

add $t0, $s0, $s1
add $t1, $s2, $s3
sub $s4, $t0, $t1

where $s0, $s1, $s2, $s3 each corresponds to g, h, i, j .

Arithmetic Operation only occur on registers in MIPS instructions. Therefore there needs to be data transfer instructions.