|WikiProject Computer science|
The diagram is possible to show zero, normals and denormals numbers. Smth like http://ridiculousfish.com/images/float/line_thingy_2.gif or even http://blogs.msdn.com/blogfiles/dwayneneed/WindowsLiveWriter/Funwithfloatingpoint_14F06/image_5.png or like Fig 2.2`a5b (talk) 15:53, 24 November 2010 (UTC)
Moving (not deleting) this here until some sort of consensus arises (edited to clarify different inputs). Please add signatures, and apologies if I got anything wrong ...
- Why is this here? The PDF seems to suggest that subnormals are the same as zero...(!)
- No, the pdf doesn’t says that, read it more carefully. Denormals are very small relative to “normal” numbers in some applications. Their existence introduces slowness in the processing, so it may be better to remove or avoid them, the computation accuracy not being impacted. The paper focuses on this issue. (the author)
Suggestion: It would be useful (to me, and probably others) to show a few specific examples of denormal and subnormal numbers. From the description "denormal numbers are encoded with a biased exponent of 0, but are interpreted with the value of the smallest allowed exponent, which is one greater (i.e., as if it were encoded as a 1)" I don't think I could tell you how a denormal number is encoded, but with a couple of examples I could probably grasp the concept.
When adding floating point numbers together, it usually makes sense to normalize one of them until it matches the magnitude of the other. Am I understanding this right? Is a subnormal (denormal?) number one that resists normalization? For instance, if the magnitude of one is so far out of range of the other, that it is not possible to shift the bits left (or right) without losing the bits of the other because of the differences in magnitude? For instance, in a minimal floating point system where there are 24 bits in the mantissa, and 8 bits in the exponent, and it is desirable to add a couple numbers together, you usually choose one number or the other based on its exponent, and then start shifting the mantissa one direction or the other (adjusting the exponent each time) until their exponents are equal. I am guessing here because the main article doesn't explain this to me in a way that a non-mathematician would be able to understand it. But if I am going in the right direction a denormalization barrier would be one where it is not desirable to normalize the floating point numbers because it is inherently (or predictively) out of the range of numbers permitted by the equation being entertained.
I am being a little simplistic here because there are other operations besides addition where you would want to normalize numbers. I was just saying addition because that is the easiest one to look at. 184.108.40.206 (talk) 22:33, 5 December 2008 (UTC)
- When you add two numbers together, floating point or not, there is one exact possible result. If you then convert that into some set of representable numbers you may (or may not) have to apply some rounding or other approximation. mfc (talk) 16:11, 7 December 2008 (UTC)
The article refers to controversies in the "K-C-S format". What does K-C-S stand for (as initials) and what is the format? (i.e. same as IEEE 754 or some preliminary format?) Co149 (talk) 22:13, 12 September 2009 (UTC)
"See also various papers on William Kahan's web site"? Can this be more specific? There is no reference to denormal numbers on that page and it's too much to ask people to click through to every paper linked from that page and search them individually. 220.127.116.11 (talk) 19:49, 5 March 2010 (UTC)
Which systems use denormal numbers?
The article often says "some systems". It would be very interesting to get specific information about which systems specifically support denormal numbers. And what actually "system" means? A processors? Operating system? What about popular processors sold before and after 2008? What about programs written in Java (which try to behaver identically on all systems)? — Preceding unsigned comment added by 18.104.22.168 (talk) 18:41, 11 May 2012 (UTC)