TonyTebby writes:
> The 68xxx series is 16 bit word oriented (even on the 68008 8 bit bus > version) so a whole word exponent makes sense. > But, by using only 12 bits for the exponent (enough for astonomical > callculations) the 4 MSBs can be used as the "floating point number token" > flag without needing to use an extra word in to flag a floating point > number - a 25% space saving for almost no cost. > At the time, "mass storage" was of the order of 100 kbytes, not the 100 > Gbyte today. That makes goods sense. But (my apologies to all those for whom it is as obvious as an elephant in the living room) with a 12 bit exponent, how come the range is only +/-617? Ie, why isnt it +/-$800 ? > > It allows all operations on the exponent to be done with unsigned > > arithmetic, which saves some brain work when implementing the stuff. > > > > Saving brainwork also means saving time and cost > > > It gives an easy test for a "magic" value of zero exponent, which is > > handy for the "special" cases. If is were not biased, you would have to > > use a value like "0x8000", which would become messy. > > > > A floating point value = 0.0 is 6 bytes of zero - not just neat but > economical In practise Qdos seems to interpret $xxx : $00000000 as zero, in other words there are 4096 different ways of saying nothing. That may be neat but hardly economical ;) Per
