EasyManua.ls Logo

LI-COR LI-6400 - Two Object Transforms

LI-COR LI-6400
846 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
LPL Topics
Math Functions
Using the LI-6400 23-21
ÒNumÓ means DOUBLE or LONG. When a Single Object Transform oper-
ates on numeric value a, the result will be either a DOUBLE or LONG pushed
back onto the stack, depending on the keyword, and on the type (DOUBLE
or LONG) of a. For example, the sine function (SIN) will always return a
DOUBLE regardless of whether the argument is DOUBLE or LONG, while
the sign change function (CHS) retains aÕs type.
ÒNAddrÓ means a numeric objectÕs address, such as the address of a CHAR,
INT, LONG, DOUBLE, or FLOAT. ÒArrayÓ means the address of any array.
When a Single Object Transform operates on NAddr c or Array d, the address
remains on the stack; the values of the variable or array may have changed,
however.
When an Array is the object of the transform, each element of the array is
transformed. If the array is a PTR array, its elements can potentially point at
non-numeric objects, such as function addresses, or other PTR arrays, so what
happens then? The rule is this: all pointer elements are tracked down (pointers
to pointers to pointers, etc.), and if the final object is numeric, it is trans-
formed. If not, and the transform requires ultimately a numeric value, then an
ÒIllegal ObjectÓ fatal error is generated.
Two Object Transforms
Two Object Transforms can operate on any combination of value, address of
numeric variable, or array. The target of a Two Object Transform is the 2nd
item on the stack, not the top item on the stack. The target can be a ÒNumÓ,
ÒNAddrÓ, or an ÒArrayÓ, just like with Single Object Transforms. The object
Initial: Num a
Final: DOUBLE or LONG b
or
Initial: NAddr c
Final: NAddr c
or

Table of Contents

Other manuals for LI-COR LI-6400

Related product manuals