| John W. Kennedy 2006-01-13, 6:57 pm |
| robin wrote:
> "John W. Kennedy" <jwkenne@attglobal.net> wrote in message
> news:E1Uxf.1208$l03.452@fe11.lga...
>
> Yes and no. Double precision gave 28 extra bits.
The 704 family offered double precision, too; it was not fully
implemented in hardware, but the hardware assisted it, and the FORTRAN
compiler supported it.
> But for most work, little difference between 36 bits and 32 bits.
> But that's no measure, anyhow. The appropriate mesaure is
> the number of mantissa bits and range of exponent.
They add up to the word size, one way or the other. In any case, the
S/360 had significantly fewer effective fraction bits (21) in single
precision than the 7094 (27). In practice, a very, very large number of
FORTRAN programs had to be altered to use double precision where single
precision had once served.
> And as for a "strategic error", the S/360 was the only architecture
> that was copied around the world [apart from the PC],
> and is the only architecture that survives from the 1960s and earlier
> [albeit updated].
The _whole_ S/360 architecture was copied, but, whereas the 8/16/32/64
two's-complement, byte-addressable data architecture has become
universal, the S/360 floating-point design was never used outside of the
context of full S/360 compatibility, and the modern descendants of the
S/360 now offer the vastly superior IEEE-754 as an alternative. Note,
too, that floating-point has become nearly a dead issue in the S/360
world; the z/OS FORTRAN compiler is decades old, and several generations
out of date.
[color=darkred]
> I never had any difficulty with that, and I suspect
> that nobody else did either.
There were many problems with S/360 floating point in the early days;
the literature was awash with the subject.
> How would you have done it better?
> With binary, you would have, say, 21 bit mantissa plus sign
> and 9-bit exponent plus sign (or biased 10 bits).
>
> The reason for chosing the 8-bit exponent field was influenced by
> byte-orientation, which, among other things, permitted instructions
> like IC and STC to manipulate the exponent.
In other words, hardware convenience at the cost of usability.
> Then there was the question of performance during pre- and
> post-normalising Shifts of 4 bits at a time (maximum of 6 shifts
> for single precision) for hex is a lot quicker than 1 bit at a time
> for binary (maximum 24 shifts) [single precision, and corresponding
> values for double precision].
> The choice gave a range of 10**-78 thru 10**75 IIRC,
> while some competitors had a less-accommodating range of
> 10**-35 to 10**35.
>
> And if you chose 24 bit mantissa, that would give you 7 biased
> exponent bits, or 6 real bits. Which doesn't give you an
> exciting range of exponents, to put it mildly.
>
>
> Are you sure of that? The 1964 Principles of Operations
> states that a zero word is returned for underflow,
> which it always did.
That was before the Engineering Change. After the Engineering Change, if
the Underflow Mask bit in the PSW is 1, the exponent is wrapped (i.e.,
is set to 128 more than the correct value).
>
> Competitive equipment had 32 bits, 48 bits, 36 bits, 60 bits
> but in the main, more than 32 bits was scarcely the rule.
32 bits was rare before the 360.
--
John W. Kennedy
"But now is a new thing which is very old--
that the rich make themselves richer and not poorer,
which is the true Gospel, for the poor's sake."
-- Charles Williams. "Judgement at Chelmsford"
|