Assembly:

MOD rd, rs, rt

nanoMIPS

Modulo

Purpose:

Modulo. Compute signed division of register $rs by register $rt, and place the remainderin register $rd.

Availability:

nanoMIPS

Format:

001000

rt

rs

rd

x

0101011

000

6

5

5

5

1

7

3

Operation:

numerator = GPR[rs]
denominator = GPR[rt]
if denominator == 0:
    quotient, remainder = (UNKNOWN, UNKNOWN)
else:
    quotient, remainder = divide_integers(numerator, denominator)
GPR[rd] = sign_extend(remainder, from_nbits=32)

Exceptions:

None.