摘要 机器算错了吗?是的,算错了!机器算对了吗?是的,算对了。
计算机的错误计算(一)中例1 介绍了计算机对 Rump 给出的算式
(其中)
的错误计算:正确结果是,但是,计算机给出了错误结果。比如,在 Sun机器上用 Fortran程序计算, 32位、64位精度下的结果分别为
,
.
下面在十进制的 8位与 16位的有效位数下分别计算该式。
若保留 8位有效数字,则计算过程与结果如下:
保留 16位有效数字,则计算过程与结果又如下:
这样,在十进制下,人类输出了错误结果。对照此结果,我们或许也能理解 Sun计算机的输出了。这时,你还能说,Sun机器的输出不对吗?它是按照人类的指令运行的!它没有违背人类的指令。只不过是人类的指令错了。它输出的是“正确”的结果,虽然该结果是错误结果。