Real and Integer Data Types Real and Integer Data Types Numbers that have a whole number and a fractional part (or mantissa and exponent if the value is expressed in scientific notation) belong to the data type real. Numeric values having only a whole number belong to the data type integer. In general, eV+ does not require you to differentiate between these two data types. If an integer is required and you supply a real, eV+ promotes the real to an integer by rounding (not truncation). Where real values are required, eV+ considers an integer a special case of a real that does not have a fractional part. The default real type is a signed, 32-bit IEEE single-precision number.
Real values can also be stored as 64-bit IEEE double-precision numbers if they are specifically typed using the DOUBLE keyword (for details, see Variable Classes on page 47). The range of integer values is: -16,777,216 to 16,777,215 Single-precision real values have 24 bits of precision, and have the approximate range: -1E+38 to 1E+38 Double-precision real values have 52 bits of precision, and have the approximate range: -1E+307 to 1E+307 Numeric Representation Numeric values can be represented in the standard decimal notation or in scientific notation, as described in the previous section. Numeric values can also be represented in octal, binary, and hexadecimal form.
The following table shows the required form for each integer representation. Integer Value Representation eV+Language User's Guide, v2.x, 18318-000 Rev A Page 42 Prefi- x Example Representatio- n none -193 decimal ^B ^B1001 binary (maximum of 8 bits) ^ ^346 octal ^H ^H23FF hexadecimal ^D ^D2000000- 0 double-precision