Subscribe to the Free Print Edition!
Celebrating 25 Years
Sprint
researchstore


Tech Blog

09/26/07 -- 10:31 AM

By Joab Jackson

More on the Excel bug

Yesterday we reported how Microsoft Office Excel 2007 would seemingly generate an incorrect answer when 850 was multiplied against 77.1.

Not surprisingly, Microsoft officials are downplaying the problem, and others are finding more than meets the eye.

“You may want to check this a little harder,” a careful observer from one of those brainy government contracting firms advised us by e-mail yesterday. “This bug is prevalent in calculations regarding 65,535.” In other words, any other multiples that total 65,535 may have the same problem, the source pointed out.

Indeed. Neil Rubenking, in the online publication AppScout, tallied up over 10,000 wrong multiplications, again all involving 65,535 as the final product. Excel 2007 does not seem to like the answer 65,535.

Is this problem serious? In a way, it’s a bit like a fibbing politician. The fib itself may be of little consequence. The soundness of the mindset that produces the fib is the real issue. Is it a defect with the core of the mechanism, which could be dangerous, or is it just an anomaly of no real import?

Computer science is nothing if not tricky. And the good news may be that the Excel calculation engine may not be at fault after all. A member of the Microsoft Excel development team blogged yesterday that the error is one of display, not of calculation.

In other words, Excel is calculating the correct answer, it is just not displaying the correct answer. In complicated spreadsheets, the real product, 65,535, will be used in any subsequent calculations that depend on that product, rather than the erroneous 100,000. So the untold numbers of spreadsheets being used for mission-critical functions such as payroll seem to be calculating correctly, even if any resulting printouts don't add up.

Admittedly this is not as a serious of a problem, one more of cosmetics than of infrastructure.

The number 65,535 is not exactly a random bystander when it comes to computer calculations, by the way. It is the highest possible number that can be represented in 16-bit binary. We have no idea what this could possibly mean in relation to display errors, but that would probably be the starting point for the Microsoft bug trackers.

 | Link to this Page | 

Post a Comment

If you are currently registered, click here to login and post your comment.

If you are new to GCN, click here to register and post your comment.