Unformatted text preview: illustrated, modi ed to re ect the
Cray's longer wordlength, is performed on a Cray XMP, the result generated
is wrong by a factor of two since a one is shifted past the end of the second
operand's signi cand and discarded. In this example, instead of having x y = (x ; y)(1 + ) where (3) we have x y = 2(x ; y ). On a Cray YMP, on the other hand, the second
operand is rounded before the operation takes place. This converts the second
operand to the value 1.0 and causes a nal result of 0.0 to be computed, i.e.
x y = 0. Evidently, Cray supercomputers do not use correctly rounded
19 Machines supporting the IEEE standard do, however, have correctly rounded
arithmetic, so that (3), for example, always holds. Exactly how this is implemented depends on the machine, but typically oating point operations
are carried out using extended precision registers, e.g. 80-bit registers, even
if the values loaded from and stored to memory are only single or double
precision. This e ectively provides many...
View Full Document
- Spring '09
- oating point