L9E_DIVDP: Double Precision Division
(Original Document)
Naming
Name in LL984 Editor
Function Block Name
name of legacy 984 instruction
name in other tools and editors like:
  • Type Library Browser
  • Data Editor
  • Animation Tables
  • Search Results
Function Description
The L9E_DIVDP DFB divides a double precision operand 1 by a double precision operand 2 and stores the result in an array.
Representation
Parameters
Input Pin
Name
Data Type
Address Range
Meaning
Top
ENABLE
ON = operand 1 divided by operand 2 and result posted in designated words.
Middle
DECIMAL
ON = decimal remainder
OFF = fractional remainder
Node
Node Type
Name
Data Type
Address Range
Meaning
Top
IN
VALUE1
ARRAY[1...2] OF UINT
%MW
double precision operand 1
VALUE1 stores the high-order and low-order halves of operand 1, for a combined double precision value in the range of 0 through 99,999,999.
Middle
IN/OUT
RESULT
ARRAY[1...6] OF UINT
%MW
operand 2, quotient and remainder
  • Word 1 and 2 store the high-order and low-order halves of operand 2, for a combined double precision value in the range 0 through 99,999,999.
    Note: Since division by 0 is illegal, a 0 value causes an event. An event trapping routine sets the remaining RESULT words to 0000 and turns OP2ISZERO ON.
  • Word 3 and 4 store an eight-digit quotient.
  • Word 5 and 6 store the remainder. If the remainder is expressed as a fraction, it is 8 digits long and both words are used; if the remainder is expressed as a decimal, it is 4 digits long and only word 5 is used.
Output Pin
Name
Data Type
Address Range
Meaning
Top
OUT
BOOL
ON = operation successful
Middle
ERR
BOOL
ON = operand out of range or invalid
Bottom
OP2ZERO
BOOL
ON = operand 2 is zero