Ddiv, Doubleword divide – NEC Network Controller uPD98502 User Manual
Page 473

APPENDIX A MIPS III INSTRUCTION SET DETAILS
Preliminary User’s Manual S15543EJ1V0UM
473
DDIV
Doubleword Divide
DDIV
rs
SPECIAL
0 0 0 0 0 0
rt
0
0 0 0 0 0 0 0 0 0 0
DDIV
0 1 1 1 1 0
31
26 25
21 20
16 15
6 5
0
6
5
5
10
6
Format:
DDIV rs, rt
Description:
The contents of general register
rs are divided by the contents of general register rt, treating both operands as 2’s
complement values. No overflow exception occurs under any circumstances, and the result of this operation is
undefined when the divisor is zero.
This instruction is typically followed by additional instructions to check for a zero divisor and for overflow.
When the operation completes, the quotient word of the double result is loaded into special register
LO, and the
remainder word of the double result is loaded into special register
HI.
If either of the two preceding instructions is MFHI or MFLO, the results of those instructions are undefined. Correct
operation requires separating reads of
HI or LO from writes by two or more instructions.
This operation is defined in 64-bit mode or in 32-bit kernel mode. Execution of this instruction in 32-bit user or
supervisor mode causes a reserved instruction exception.
Operation:
64
T-2:
LO
← undefined
HI
← undefined
T-1:
LO
← undefined
HI
← undefined
T:
LO
← GPR [rs] div GPR [rt]
HI
← GPR [rs] mod GPR [rt]
Exceptions:
Reserved instruction exception (32-bit user mode/supervisor mode)