High−level Instructions
3 − 82
Explanation of example
Contents of
DT11
Contents of
DT20
Contents of
DT21
Higher 16 bits Lower 16 bits
Contents of DT10
← Quotient is stored in DT31 and DT30.
÷ (Division)
To DT31 To DT30
← The lower 16 bits of the remainder is stored in DT9015/DT90015 and
the higher 16 bits of the remainder is stored in DT9016/DT90016.
To DT9016/
DT90016
To DT9015/
DT90015
Description
The 32-bit data or 32-bit equivalent constant specified by S1 is divided by the 32-bit data or 32-bit equivalent
constant specified by S2. The quotient is stored in D+1 and D and the remainder is stored in the special data
registers DT 9016 and DT9015 (DT90016 and DT90015 for FP0 T32/F P0R/FP Σ/FP−X/FP2/FP2SH/
FP10SH).
Dividend data
Quotient
S1: lower 16-bit
S1+1: higher16-bit
D: lower 16-bit
D+1: higher 16-bit
÷
S2: lower 16-bit
S2+1: higher16-bit
Divisor
Remainder
DT9015/DT90015
DT9016/DT90016
When processing 32-bit data, the higher 16-bit areas (S1+1, S2+1, D+1) are automatically determined once
the lower 16-bit areas (S1, S2, D) are specified.
With the FP0 T32/FP0R/FPΣ/FP−X/FP2/FP2SH/FP10SH and FP0 C10, C14, C16, C32/FP−e, the numbers
of the special data registers are different.
Type Special data register
FP0 C10, C14, C16, C32/
FP−e
DT9016, DT9015
FP0 T32/FP0R/FPΣ/FP−X/
FP2/FP2SH/FP10SH
DT90016, DT90015
Flag conditions
・Error flag (R9007): Turns on and stays on when the area specified using the index modifier
exceeds the limit.
・Error flag (R9008): Turns on for an instant when the area specified using the index modifier
exceeds the limit.
・= flag (R900B): Turns on for an instant when the calculated result is recognized as “0”.
・Carry flag (R9009): Turns on for an instant when negative minimum value K-2147483648
(H80000000) is divided by K-1 (HFFFFFFFF).