阿波罗11号登月源代码公布,其中竟隐藏莎翁名言

雷锋网  •  扫码分享
我是创始人李岩:很抱歉!给自己产品做个广告,点击进来看看。  

阿波罗11号登月源代码公布,其中竟隐藏莎翁名言

上周四,一位前NASA的实习生Chris Garry在Github上公开了“阿波罗11号”登月项目计算机制导系统的源代码,使得普通民众也能一览航天登月系统的内部实现逻辑。(只不过当年用汇编写的代码,一般人可能看不太懂就是了)

其实,“阿波罗11号”登月项目的源代码早在2003年就被科技学者Ron Burkey公布于众,那时他不得不从一份原文的扫描版中人工将代码一行一行地敲入计算机,并上传到网络。如下图所示,照片右侧一人高的纸上全是阿波罗11号登月的代码,你就可以想象Ron Burkey是多么有毅力的一个人。除了上传该代码,Ron Burkey还根据自己对代码逻辑的理解,写了一个阿波罗11号制导系统的仿真程序,关于该程序的视频大家可以 点这里

阿波罗11号登月源代码公布,其中竟隐藏莎翁名言

可能由于分享工具的关系,当年代码上传后并没有被广大的程序员看到(也可能当年的程序员数量比较少)。一直到上周四代码被上传到Github,这才引起了广泛的关注了热烈的讨论。

经过火眼金睛的网友、程序员们的仔细研读,不禁在代码里发现了许多有趣的段落,小编现摘录如下。

首先是在现代系统编程中被明令禁止的“魔鬼数字”(一般都要求在代码开头用带有明确意义的宏定义代替程序中出现的具体数字,否则会造成他人阅读程序的障碍)。万万没想到,堂堂大NASA登月计划的代码里竟然隐藏了“魔鬼数字”,不禁令广大的程序员朋友们咋舌。

阿波罗11号登月源代码公布,其中竟隐藏莎翁名言

另外,阿波罗的程序员们在一段关于点火程序的注释里,竟然讲起了故事,是的,你没有听错,是在讲故事,详细介绍了那句“Burn,Bab!Burn!”的由来。(大意是说这句话最先来自一位著名电台主持Magnificent Montague,经他之手捧红了一大批美国Soul Music歌曲)

阿波罗11号登月源代码公布,其中竟隐藏莎翁名言

还有,阿波罗的程序员们非常贴心,还在代码的相关部分写上了航天员此刻在进行相关操作时的注意事项,比如“请展开登录雷达”等(当然,这里阿波罗的程序员用the silly thing代指了landing radar)。

阿波罗11号登月源代码公布,其中竟隐藏莎翁名言

最令人吃惊的是,登月代码里竟然还隐藏了莎士比亚的名著《亨利六世》中的一个片段:"IT WILL BE PROVED TO THY FACE THAT THOU HAST MEN ABOUT THEE THAT USUALLY TALK OF A NOUN AND A VERB, AND SUCH ABOMINABLE WORDS AS NO CHRISTIAN EAR CAN ENDURE TO HEAR." 大义是说:“我要径直向你们指出,你任用了许多人,让他们大谈什么名词啊,什么动词啊,以及这一类的可恶字眼,这都是任何一个基督徒的耳朵所不能忍受的”。

阿波罗11号登月源代码公布,其中竟隐藏莎翁名言

关于为什么会在代码里出现这么一段莎翁“名言”,有人猜测是因为MIT的架构师在编写登月代码时将许多程序指令预设成一个数字,然后通过这些“数字”来进行操作,比如“37”就代表“执行(Run program)”。可能是下面编写代码的程序员们不胜其烦,整天要查表才能知道这些数字究竟代表什么意思,于是忍不住在代码里吐槽了一下。

阿波罗11号登月源代码公布,其中竟隐藏莎翁名言

现在,任何人都可以访问GitHub来获取阿波罗11号制导系统的源代码,感兴趣的朋友们不妨去看看吧: 请点击

来源: engadget , Quartz , sourceforge

阿波罗11号登月源代码公布,其中竟隐藏莎翁名言

随意打赏

阿波罗登月
提交建议
微信扫一扫,分享给好友吧。