本文主要是介绍4-6课:和 bug 的斗智斗勇,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
bug 的严重性
小 bug 怡情,大 bug 伤身
猜数游戏中的 bug,最多是让使用者输掉一个小游戏,实在是无足轻重。但是,如果是那些和我们的生活确实相关的软件中的 bug,后果就不那么轻松了。
比如,银行计算利息的程序出了 bug,导致利息计算错误,少算了给储户的利息;通讯软件经常丢一些用户之间互发的消息等……如果发生,都会对我们的日常生活造成影响。
巨大的 bug 导致灾难性结果
如果 bug 是出现在关乎国计民生的软件里,那造成的损失就不可限量了!如果航天飞机或者导弹的控制软件出了 bug,会怎么样?
事实上,这类的 bug 确实出现过:
Case1:1996 年 6 月 4 日,美国阿丽亚娜 5 型运载火箭首次发射点火后,即偏离路线,在短短 30 秒后被逼引爆自毁。
耗费 4 亿美金研发的新一代火箭,在启动半分钟后变成了一个巨大的烟花。而导致这一巨大金钱人力浪费的原因,竟然是因为一个小小的数据溢出——数据溢出哦,我们讲过的,还记得吧。
在上一代的 4 型火箭系统中,用采用 16 位的整型值作为变量(16 位的变量可以表示 [﹣32768, 32767] 区间内的值),用来表示一个火箭水平速率的测量值。因为在 4 型系统中反复验证过,火箭的水平速度不会超过 16 位的限制。
5 型火箭的开发人员简单复
这篇关于4-6课:和 bug 的斗智斗勇的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!