beautypg.com

2 floating-point math, nan, and ±inf, 3 data types, nan, and ±inf – Campbell Scientific CR1000 Measurement and Control System User Manual

Page 429

background image

Section 10. Troubleshooting

429

 

10.3.4.2 Floating-Point Math, NAN, and ±INF

Table Math Expressions and CRBasic Results

(p. 429)

lists math expressions, their

CRBasic form, and IEEE floating point-math result loaded into variables declared
as FLOAT or STRING.

10.3.4.3 Data Types, NAN, and ±INF

NAN and ±INF are presented differently depending on the declared-variable data
type. Further, they are recorded differently depending on the final-storage data
type chosen compounded with the declared-variable data type used as the source
(table Variable and FS Data Types with NAN and ±INF

(p. 429)

). For example, INF

in a variable declared As LONG is represented by the integer -2147483648.
When that variable is used as the source, the final-storage word when sampled as
UINT2 is stored as 0.

Table 111. Math Expressions and CRBasic

Results

Expression

CRBasic

Expression

Result

0 / 0

0 / 0

NAN

∞ - ∞

(1 / 0) - (1 / 0)

NAN

(-1)

-1 ^ (1 / 0)

NAN

0 * -∞

0 * (-1 * (1 / 0))

NAN

±∞ / ±∞

(1 / 0) / (1 / 0)

NAN

1

1 ^ (1 / 0)

NAN

0 * ∞

0 * (1 / 0)

NAN

x / 0

1 / 0

INF

x / -0

1 / -0

INF

-x / 0

-1 / 0

-INF

-x / -0

-1 / -0

-INF

0

(1 / 0) ^ 0

INF

0

0 ^ (1 / 0)

0

0

0

0 ^ 0

1

 

Table 112. Variable and FS Data Types with NAN and ±INF

Final-Storage Data Type & Associated Stored Values

Variable

Type

Test

Expressio

n

Public / Dim

Variables FP2 IEEE4 UINT2 UNIT4 STRING BOOL

BOOL8 LONG

As FLOAT

1 / 0

INF

INF1

INF1

655352

4294967295

+INF

TRUE

TRUE

2,147,483,647

0 / 0

NAN

NAN

NAN

0

2147483648

NAN

TRUE

TRUE

-2,147,483,648

As LONG

1 / 0

2,147,483,647

7999

2.147484E09

65535

2147483647

2147483647

TRUE

TRUE

2,147,483,647