...
【24h】

A LUCID INTERVAL

机译:间隔时间

获取原文
获取原文并翻译 | 示例
           

摘要

Give a digital computer a problem in arithmetic, and it will grind away methodically, tirelessly, at gigahertz speed, until ultimately it produces the wrong answer. The cause of this sorry situation is not that software is full of bugs―although that is very likely true as well― nor is it that hardware is unreliable. The problem is simply that computers are discrete and finite machines, and they cannot cope with some of the continuous and infinite aspects of mathematics. Even an innocent-looking number like Mo can cause no end of trouble: In most cases, the computer cannot even read it in or print it out exactly, much less perform exact calculations with it. Errors caused by these limitations of digital machines are usually small and inconsequential, but sometimes every bit counts. On February 25, 1991, a Patriot missile battery assigned to protect a military installation at Dahrahn, Saudi Arabia, failed to intercept a Scud missile, and the malfunction was blamed on an error in computer arithmetic. The Patriot's control system kept track of time by counting tenths of a second; to convert the count into full seconds, the computer multiplied by 1/10. Mathematically, the procedure is unassailable, but computationally it was disastrous. Because the decimal fraction 1/10 has no exact finite representation in binary notation, the computer had to approximate. Apparently, the conversion constant stored in the program was the 24-bit binary fraction 0.00011001100110011001100, which is too small by a factor of about one ten-millionth. The discrepancy sounds tiny, but over four days it built up to about a third of a second. In combination with other peculiarities of the control software, the inaccuracy caused a miscalculation of almost 700 meters in the predicted position of the incoming missile. Twenty-eight soldiers died.
机译:给数字计算机一个算术问题,它将以千兆赫兹的速度有条不紊地磨掉,直到最终产生错误的答案。造成这种遗憾情况的原因不是软件中充满了错误(尽管很可能也是这样),也不是硬件不可靠。问题很简单,因为计算机是离散的有限机器,它们无法应对数学的某些连续和无限方面。即使是看起来像Mo的无辜数字也不会造成麻烦:在大多数情况下,计算机甚至无法准确读取或打印出来,更不用说执行精确的计算了。由数字机器的这些限制引起的错误通常很小且无关紧要,但有时每一位都很重要。 1991年2月25日,分配用于保护沙特阿拉伯达哈恩军事设施的“爱国者”导弹电池未能拦截飞毛腿导弹,并且将故障归咎于计算机运算错误。爱国者的控制系统通过精确到十分之一秒来跟踪时间。要将计数转换为整秒,计算机将乘以1/10。从数学上讲,该过程是无懈可击的,但在计算上却是灾难性的。由于十进制小数1/10没有以二进制表示的精确有限表示,因此计算机必须近似。显然,存储在程序中的转换常数是24位二进制分数0.00011001100110011001100,该值太小约十分之一。差异听上去很小,但是在四天的时间里累积了大约三分之一的时间。结合控制软件的其他特殊功能,这种不精确性导致进来导弹的预测位置的计算误差接近700米。二十八名士兵死亡。

著录项

  • 来源
    《American Scientist》 |2003年第6期|p.484-488|共5页
  • 作者

    Brian Hayes;

  • 作者单位

    277 Dacian Avenue, Durham, NC 27701;

  • 收录信息 美国《科学引文索引》(SCI);
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类 自然科学总论;
  • 关键词

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号