Floating point minimum and maximum exponent values

M

Marco

Hi all, why the maximum and minimum exp values are 1024 and -1021?:
sys.float_info(max=1.7976931348623157e+308, max_exp=1024,
max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021,
min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16,
radix=2, rounds=1)

The values (in double precision) 0 and 2047 are reserved for zero,
infinity and NaN (in combination with the fraction), so I was expecting
-1022 and 1023...
 
C

Chris Angelico

Hi all, why the maximum and minimum exp values are 1024 and -1021?:

sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308,
min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15,
mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)

The values (in double precision) 0 and 2047 are reserved for zero, infinity
and NaN (in combination with the fraction), so I was expecting -1022 and
1023...

Piece of extreme oddity, this.
.... lots of other info ...
| max_exp
| DBL_MAX_EXP -- maximum int e such that radix**(e-1) is representable
|
| min_exp
| DBL_MIN_EXP -- minimum int e such that radix**(e-1) is a
normalized float
....

So it's technically correct. Followup question: Why is it off by one?

ChrisA
 
S

Serhiy Storchaka

16.07.13 15:04, Chris Angelico напиÑав(ла):
Piece of extreme oddity, this.

... lots of other info ...
| max_exp
| DBL_MAX_EXP -- maximum int e such that radix**(e-1) is representable
|
| min_exp
| DBL_MIN_EXP -- minimum int e such that radix**(e-1) is a
normalized float
...

So it's technically correct. Followup question: Why is it off by one?

sys.float_info.max == sys.float_info.radix**sys.float_info.max_exp -
sys.float_info.radix**(sys.float_info.max_exp-sys.float_info.mant_dig)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,961
Messages
2,570,130
Members
46,689
Latest member
liammiller

Latest Threads

Top