Name

Extended Type

Syntax

type Extended;

Description

The Extended type is an Intel standard floating-point type that uses 10 bytes to store a sign bit, a 15-bit exponent, and a 64-bit mantissa. Extended conforms to the minimum requirements of the IEEE-754 extended double precision type.

The limits of the Extended type are approximately 3.37 × 10-4932 to 1.18 × 104932, with about 19 decimal digits of precision.

Unlike Single and Double, Extended contains all of its significant bits. Normalized values, infinity, and not-a-number have an explicit 1 bit as the most significant bit. Table 5-2 shows the detailed format of finite and special Extended values. Not all bit patterns are valid Extended values. Delphi raises runtime error 6 (EInvalidOp) if you try to use an invalid bit pattern as a floating-point number.

Table 5-2. Format of Extended Floating-Point Numbers

Numeric Class

Sign

Exponent Bits

Mantissa Bits

Positive

   

Normalized

0

0...1 to 1...0

10...0 to 11...1

Denormalized

0

0...0

0...1 to 01...1

Zero

0

0...0

0...0

Infinity

0

1...1

10...

Quiet NaN

0

1...1

110...0 to 11...1

Signaling NaN

0

1...1

100...1 to 101...1

Negative

   

Normalized

1

0...1 to 1...0

10...0 to 11...1

Denormalized

1

0...0

0...1 to 01...1

Zero

1

0...0

0...0

Infinity

1

1...1

10...

Quiet NaN

1

1...1

110...0 to 11...1

Signaling NaN

1

1...1

100...1 to 101...1

Tips and Tricks

  • Use Extended when you must preserve the maximum precision or exponent range, but realize that ...

Get Delphi in a Nutshell now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.