3DSoftware.com > Programming > Floating Point > Page 4
Floating Point Numbers  Page 4
 
Wide Floating Point
 
Exponent
 
The exponent of a WideFloat number is a signed integer. It is not biased. It can be negative. It is the actual exponent.
 
You can think of an exponent as specifying how many bit positions the significand is shifted. That would be the bit-wise exponent. The number of bits shifted must be a multiple of the digit width (number of bits in a digit). In our implementation, a digit is 30 bits wide, so the bit-wise exponent must be a multiple of 30. For example: –30, 0, 30, and 60 would be valid bit-wise exponents; –4, 1, and 15 would not be valid bit-wise exponents.
 
Instead of storing the exponent as a bit-wise exponent, we store it as a digit-wise exponent, which is the bit-wise exponent divided by the digit width. For example: the bit-wise exponents –30 and 60 are stored as –1 and 2 respectively.
 
Using digit-wise exponents increases the range of possible exponents and reduces the need for (frequency of) normalizations in floating point operations. [ 1 ] [ 2 ]
 
Digit-wise shifting speeds up processing of these numbers, but there is a drawback: some bits of storage space may go unused at each end, depending on how a numbers’ bits span the digits. [ 3 ]   At most, almost a digit worth of bits can go unused.  Significands that are 180-bits are then said to have 150-bit precision, and can be rounded to that precision when exported.
 
Footnotes:
 
1.   Tremblay, J.P., and Sorenson, P.G., 1976, An Introduction to Data Structures with Applications, p. 40.
 
2.   David Goldberg, 2007, “Computer Arithmetic”, Appendix I (on disk) in Hennessy & Patterson, Computer Architecture: A Quantitative Approach 4th ed., pp. I-63 to I-64.
 
3.   This is called wobbling precision. Cody, W.J., and Waite, W., 1980, Software Manual for the Elementary Functions, p. 7, 269.
 
—  Page 4  —
 « Page 3 Contents Page 5 » 
 
Copyright © 2008 by 3D Software. All rights reserved.
3D Software, P.O. Box 221190, Sacramento CA 95822 USA
www.3DSoftware.com     Contact us
Thursday, 20-Nov-2008 12:03:57 GMT