"Tom Linden" <tom@[EMAIL PROTECTED]
> wrote in message
news:ops3nckra5zgicya@[EMAIL PROTECTED]
> On Thu, 19 Jan 2006 11:31:46 -0500, John W. Kennedy
> <jwkenne@[EMAIL PROTECTED]
> wrote:
>
> > Randy Hudson wrote:
> >> In article <pqizf.1906$EU3.1442@[EMAIL PROTECTED]
>,
> >> John W. Kennedy <jwkenne@[EMAIL PROTECTED]
> wrote:
> >> Also, with binary floating point, a normalized mantissa would always
> >> have a
> >> 1 as the leftmost bit, so in most implementations, that's assumed and
> >> overwritten by the sign bit.
> >
> > That's a relatively modern sophistication, and definitely not
applicable
> > to the vacuum-tube and discrete-transistor eras.
> >
> I don't believe that is true, I believe most floating point
> representations that
> have used a binary exponent have suppressed the leading one to obtain
one
> more
> bit of accuracy. But with a radix 16 exponent you can't. of course do
> that.
>
> Not sure how far this goes back in time, but i bet it is to the 50's
> anyway.
No. The leading bit wasn't suppressed, even when it
was done in software.
The reason was that it was more expensive (if in hardware),
requiring a test and generation of the bit. In a serial machine,
that wasted two machine cycles.
In software, all it gained was loss of time and loss of
fast memory (always in short supply).
In fact, initially (1950s) two words were used for float numbers -
one word for the manstissa and the other for the exponent.
One bit of the mantissa was "sacrificed" to render it
convenient to handle carries from the MSB [luxuries such as a
carry out bit or a condition code didn't exist], so the precision
of the mantissa was 30 bits rather than 31. This didn't matter
much because 30 bits gives 9 decimal digits. [BTW, imagine a
binary exponent of 30 bits ! ]
Later implementations packed mantissa & exponent
into a single word.


|