17.10 - Usage Notes - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - Data Types and Literals

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
July 2021
Content Type
Programming Reference
Publication ID
B035-1143-171K
Language
English (United States)

Floating Point Value Storage and Manipulation

Eight bytes are used to hold a floating point value.

Floating point values are stored and manipulated internally in IEEE floating point format. Floating point values are stored with the least significant byte first, with one bit for the mantissa sign, 11 bits for the exponent, and 52 bits for the mantissa. The mantissa sign is in the most significant bit position; the exponent sign is a part of the exponent field (excess-1024 notation, in which (1024 - exponent) = sign).

Negative numbers differ from positive numbers of the same magnitude only in the sign bit.

Vantage supports normalized, but not non-normalized, client floating point values.

The range of IEEE floating point values may be wider than that supported by the client system. Therefore, values can be created and stored in Vantage that return error messages when converted for delivery to the client system.

External Representation of FLOAT/REAL/DOUBLE PRECISION

The following table lists the client representations for the Teradata FLOAT/REAL/DOUBLE PRECISION data type.

Determining the application definitions and client data types is the responsibility of the application programmer.

Client CPU Architecture Client Representation
IBM mainframe Eight byte 64-bit (double precision) floating point number, most significant byte first, with the attributes as follows:
  • 1 bit represents the sign of the fraction.
  • 7 bits represent the unsigned power of 16 exponent stored as actual plus X’40’.
  • 56 bits represent the unsigned fraction.
UTS Eight byte 64-bit (double precision) floating point number, most significant byte first, with the attributes as follows:
  • 1 bit represents the sign of the fraction.
  • 7 bits represent the unsigned power of 16 exponent stored as actual plus X’40’.
  • 56 bits represent the unsigned fraction.
  • RISC
  • Motorola 68000
  • WE 32000
Eight byte 64-bit (double precision) floating point number, most significant byte first, with the attributes as follows:
  • 1 bit represents the sign of the fraction.
  • 11 bits represent the unsigned power of 2 exponent stored as actual plus X’3FFH’.
  • 52 bits represent the unsigned fraction.
Intel Eight byte 64-bit (double precision) floating point number, least significant byte first, with the attributes as follows:
  • 1 bit represents the sign of the fraction.
  • 11 bits represent the unsigned power of 2 exponent stored as actual plus X’3FFH’.
  • 52 bits represent the unsigned fraction.