On Friday 04 February 2005 11:10, Timothy Miller wrote: > I've been coding the adder I'm working on to have a true zero. Logic > detects that the exponent is zero (meaning something like 2^-127, I > think) and doing the appropriate thing to make it a true zero. > > But I'm wondering if I can't just do away with that. 2^-127 is so > small that any time it gets converted to integer or added to a larger > number, it really does become zero. In fact, I'm not sure I can come > up with a situation where not explicitly making that zero does any > harm. > > Comments? > > One simplification I've already done is to not account for overflow or > underflow. If the exponent goes below 0 or greater than 255, it > wraps. Is it reasonable to just hope that no one uses numbers that > big or that small?
Though I am no numerical lawyer, I seriously doubt you can get away with that, and will be forced to let the exponent saturate properly. But shouldn't you be able to overlap the saturation with the next arithmetic operation, since we always know which arithmetic operation is coming next? In some specific stages you may be able to prove overflow isn't possible. On the other hand, you ought to be able to dispense with normalization in many cases, in particular when the next operation is add or truncate. In these cases, the overlow bit can be combined with the shift that's needed anyway. I think. Regards, Daniel Regards, Daniel _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
