Delta DVP-ES2 User Manual
Page 421
3 . I n s t r u c t i o n S e t
3 - 3 0 5
API Mnemonic
Operands
Function
122
D EMUL
P
Floating point multiplication
Controllers
ES2/EX2 SS2 SA2
SE
SX2
Bit Devices
Word devices
Program Steps
Type
OP
X Y
M S K H KnX KnY KnM KnS T C D E F
S
1
*
*
*
S
2
*
*
*
D
*
DEMUL, DEMULP: 13
steps
PULSE 16-bit 32-bit
ES2/EX2 SS2
SA2
SE
SX2 ES2/EX2 SS2
SA2
SE
SX2 ES2/EX2 SS2
SA2
SE
SX2
Operands:
S
1
: Multiplicand S
2
: Multiplicator D: Multiplication result
Explanations:
1.
S
1
× S
2
= D. The floating point value in S
1
is multiplied with the floating point value in S
2
and the
result is D. The multiplication is conducted in binary floating point format
2. If
S
1
or S
2
is designated as constant K or H, the instruction will convert the constant into a
binary floating point value before the operation
3.
S
1
and S
2
can designate the same register. In this case, if the instruction is specified as
“continuous execution instruction” (generally DEMULP instruction) and the drive contact is ON,
the register will be multiplied once in every scan.
4.
Flags: M1020 (Zero flag), M1021 (Borrow flag) and M1022 (Carry flag)
If absolute value of the result exceeds max. floating point value, carry flag M1022 = ON.
If absolute value of the result is less than min. floating point value, borrow flag M1021 = ON.
If the conversion result is 0, zero flag M1020 = ON.
Program Example 1:
When X1 = ON, binary floating point (D1, D0) multiplies binary floating point (D11, D10) and the
result is stored in (D21, D20).
D0
DEMUL
X1
D10
D20
Program Example 2:
When X2 = ON, K1234 (automatically converted into binary floating point value) multiplies binary
floating point (D1, D0) and the result is stored in (D11, D10).
K1234
DEMUL
X2
D0
D10