3. Instruction Set
3-309
API Mnemonic Operands Function
126
D LOG P Float logarithm operation
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
S1 * * *
S2 * * *
D *
DLOG, DLOGP: 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:
S1: Base S2: Antilogarithm D: Operation result
Explanations:
1. Perform logarithm operation with S1 as the base and S2 as the antilogarithm and save the
result in D.
2. Only a positive number is valid for S. Register D has to be 32-bit format. Operation is
conducted in floating point value, so the value in S needs to be converted into floating value
before logarithm operation.
3. Logarithm operation: S1D = S2, D = ? LogS1S2 = D
Example: Assume S1 = 5, S2 = 125, S1D = S2, D = ? 5D = 125 D = LogS1S2 = log5125 = 3.
4. Flags: M1020 (Zero flag), M1021 (Borrow flag) and M1022 (Carry flag).
If absolute value of the result is larger than max. floating value, carry flag M1022 = ON.
If absolute value of the result is smaller than min. floating value, borrow flag M1021 = ON.
If the conversion result is 0, zero flag M1020 = ON.
Program Example:
1. When M0 = ON, convert (D1, D0) and (D3, D2) to binary floating value and save the result in
register (D11, D10) and (D13, D12) individually.
2. When M1= ON, perform logarithm operation with (D11, D10) as base and (D13, D12) as
antilogarithm. The results are saved in register (D21, D20) in binary floating format.
3. When M2 = ON, convert the value in (D21, D20) into decimal floating point value and save the
result in (D31, D30). (At this time, D31 indicates powers of 10 for D30)