小说阅读网xiaoshuotxt.cn

繁体版 简体版
小说阅读网 > 都市小说 > 读书成神豪 >第195章 IOCCC

第195章 IOCCC(2/2)

 推荐阅读:山河后庭花我的精神病明星女友神级选择系统从足坛教父到娱乐圈掌门人九宫囚牛吾妻旋涡玖辛奈重生尼姑庵,开局诵经三千年我的白富美女友穿成极品恶婆婆后,我带着系统种田发家宋先生的小妻子
最新网址:xiaoshuotxt.cn

正因如此,导致了一个潜在的问题:出于习惯,我们可能经常将需要等于操作符的地方写成赋值操作符。

或者将需要写赋值运算符的地方不小心手贱多打一个“=”

不得不说C语言的表达能力也实在是强,按照《C编程专家》一书中描述的情况,编译器对于“求一个表达式的值,但不使用该值”这样的语句竟然也能接受,并且不发出任何警告,只是简单地把返回结果丢弃。

而这种问题在实际编译的情况下并不会报错。

只能慎重又慎重!

说起来像书中所说的例子简直是比较“温柔的错误”了,有些和计算机错误相关联的事故动辄就人命关天。

章杉不止一次地听计算机系的教授说过:

在1991年2月的第一次海湾战争中,一枚伊拉克发射的飞毛腿导弹准确击中美国在沙地阿拉伯的宰赫兰基地,当场炸死28个美国士兵,炸伤100多人,造成美军海湾战争中唯一一次伤亡超过百人的损失。

在后来的调查中发现,由于一个简单的计算机bug,使基地的爱国者反导弹系统失效,未能在空中拦截飞毛腿导弹。当时,负责防卫该基地的爱国者反导弹系统已经连续工作了100个小时,每工作一个小时,系统内的时钟会有一个微小的毫秒级延迟,这就是这个失效悲剧的根源。爱国者反导弹系统的时钟寄存器设计为24位,因而时间的精度也只限于24位的精度。在长时间的工作后,这个微小的精度误差被渐渐放大。在工作了100小时后,系统时间的延迟是三分之一秒。

对一般人人来说,0.33秒是微不足道的。但是对一个需要跟踪并摧毁一枚空中飞弹的雷达系统来说,这是灾难性的——侯赛因飞毛腿导弹空速达4.2马赫(每秒1.5公里),这个”微不足道的”0.33秒相当于大约600米的误差。在宰赫兰导弹事件中,雷达在空中发现了导弹,但是由于时钟误差没有能够准确地跟踪它,因此基地的反导弹并没有发射。

类似的事故还有1996年6月份的阿丽亚娜火箭事件。

程序员在编程时必须定义程序用到的变量,以及这些变量所需的计算机内存,这些内存用比特位定义,一个16位的变量可以代表-32,768到32,767中间的值(这个数值的由来是2^15-1)。

而一个64位的变量可以代表?9.223.372.036.854.775.808到9.223.372.036.854.775.807中间的值。

1996年6月4日,阿丽亚娜5型运载火箭的首次发射点火后,火箭开始偏离路线,最终被逼引爆自毁,整个过程只有短短30秒。

阿丽亚娜5型运载火箭基于前一代4型火箭开发。在4型火箭系统中,对一个水平速率的测量值使用了16位的变量及内存,因为在4型火箭系统中反复验证过,这一值不会超过16位的变量,而5型火箭的开发人员简单复制了这部分程序,而没有对新火箭进行数值的验证,结果发生了致命的数值溢出。

发射后这个64位带小数点的变量被转换成16位不带小数点的变量,引发了一系列的错误,从而影响了火箭上所有的计算机和硬件,瘫痪了整个系统,因而不得不选择自毁,4亿美金变成一个巨大的烟花。

俱往矣!

感慨之余,章杉及时在系统进行了结算:

说起来虽然章杉读书的速度很快,但还是用了3个小时才将这本书搞定!

“叮~宿主共读书3个小时,累计获得金钱元,累计获得经验(含Ⅱ号徽章加成)”

“另外宿主共阅读43万字,累计收获43万元软妹币~”

“目前系统等级为12级,升级所需经验为7,097,,800,000”

章节错误,点此举报(免注册),举报后维护人员会在两分钟内校正章节内容,请耐心等待,并刷新页面。
『加入书签,方便阅读』