3 ms·
The format of floating point numbers generally follows a few constraints. First, you want sufficient range so that overflows are less likely, especially for mul
by Donald 6y ago
The format of floating point numbers generally follows a few constraints. First, you want sufficient range so that overflows are less likely, especially for multiplying two smaller format numbers and accidentally overflowing the range of your largest format. Second, you want range and precision that captures the smallest widely used physical constant (Plank constant) and range for the largest (Avogradros’s number). When you combine those two constraints with common word sizes you get format ratios very similar to each other.
- Dylan16807 6y ago> First, you want sufficient range so that overflows are less likely, especially for multiplying two smaller format numbers and accidentally overflowing the range of your largest format. Second, you want range and precision that captures the smallest widely used physical constant (Plank constant) and range for the largest (Avogradros’s number). All that really means practically is that you want about 8-10 bits for your exponent. If you're starting with 32 and 64 bit words, that naturally gets you into a couple particular ranges for mantissa. But they weren't starting with a 64 bit word and then removing ten bits for exponent. So that leaves a big missing explanation for how they got to 53. Especially since, as the author's sibling comment says, it was fixed point. It couldn't represent either of those numbers.
- adrian_b 6y agoMost likely is that their number range target was computed in decimal digits, so it was of 15 decimal digits. Converting to binary that gave 53 bits.
- KMag 6y agoI have no idea if you're historically correct, but that's a darn convincing hypothesis.
- andromeduck 6y ago16 maybe? 15 doesn't seem to make sense as log 2^53 = 15.95