From: idr AT cs DOT pdx DOT edu (Ian D Romanick) Subject: Re: Help with "normalised float" etc. To: psullivn AT intersurf DOT com (Patrick Sullivan) Date: Mon, 13 Nov 1995 22:11:38 -0800 (PST) Cc: ghernan AT cariari DOT ucr DOT ac DOT cr, djgpp AT sun DOT soe DOT clarkson DOT edu > 2.0+e4 * 4789.45+e4 is not normalized. To be normal, the first part of > the float must be of the form n.x, n > 0 and n < 9; x can be whatever your > precision is. So to normalize the 2nd example, leave 2.0+e4 as it is, its > already normal. The 4789.45+e4 must be turned to 4.78945+e7. Then the > math is easier for you or a computer program. However, for multiplication and division, normalizaion is *NOT* required. For a multiply of a number XeY by a number UeV, the result is (X*U)e(Y+V). It is only for addition and subtraction that normalization is required. This is why floating point multiplies are FASTER on most newer chips than floating point adds. I guess this is a bit off topic, sorry. :) -- - See the Epsilon coder page at: ____ ____ http://www.cs.pdx.edu/~idr/ / / / /\ / "Good...bad... - Ian Romanick sez: /---- /___/ / \ / I'm the guy "For the last time, GIVE ME THE BOX!" /____ / / \/ with the gun."