APPENDIX A MIPS III INSTRUCTION SET DETAILS
Preliminary Users Manual S15543EJ1V0UM 525
MACC Multiply and Accumulate (4/5) MACC
32, sat=1, hi=1, us=0 (MACCHIS instruction)
T: temp1 GPR[rs] * GPR[rt]
temp2 saturation(temp1 + (HI || LO))
LO temp263..32
HI temp231..0
GPR[rd] HI
32, sat=1, hi=1, us=1 (MACCHIUS instruction)
T: temp1 (0 || GPR[rs]) * (0 || GPR[rt])
temp2 saturation(temp1 + ((0 || HI) || (0 || LO)))
LO temp263..32
HI temp231..0
GPR[rd] HI
64, sat=0, hi=0, us=0 (MACC instruction)
T: temp1 ((GPR[rs]31)32 || GPR[rs]) * ((GPR[rt]31)32 || GPR[rt])
temp2 temp1 + (HI31..0 || LO31..0)
LO ((temp263)32 || temp263..32)
HI ((temp231)32 || temp231..0)
GPR[rd] LO
64, sat=0, hi=0, us=1 (MACCU instruction)
T: temp1 (032 || GPR[rs]) * (032 || GPR[rt])
temp2 temp1 + (HI31..0 || LO31..0)
LO ((temp263)32 || temp263..32)
HI ((temp231)32 || temp231..0)
GPR[rd] LO
64, sat=0, hi=1, us=0 (MACCHI instruction)
T: temp1 ((GPR[rs]31)32 || GPR[rs]) * ((GPR[rt]31)32 || GPR[rt])
temp2 temp1 + (HI31..0 || LO31..0)
LO ((temp263)32 || temp263..32)
HI ((temp231)32 || temp231..0)
GPR[rd] HI
64, sat=0, hi=1, us=1 (MACCHIU instruction)
T: temp1 (032 || GPR[rs]) * (032 || GPR[rt])
temp2 temp1 + (HI31..0 || LO31..0)
LO ((temp263)32 || temp263..32)
HI ((temp231)32 || temp231..0)
GPR[rd] HI