阿波罗计划软件代码公开,可免费下载 控制阿波罗11号的飞行软件代码近日首次上传到著名的代码共享网站GitHub上。这不仅让当代码农得以一窥过去,里面也充满了上世纪60年的流行文化痕迹,这就像一个代码时间胶囊。 这些代码是由MIT仪器实验室的程序员们在60年代中期从零写起的,因为人类之前从未去过月球。为了圆满完成任务,团队发明了一种让电脑储存程序的新方式——“磁心线储存器”,其中用到了一种复杂到逆天的汇编语言。 现在这些代码全部都在GitHub上了,传说中的“阿波罗导航电脑代码(Apollo Guidance Computer——AGC)”。它们第一次公开是几年前MIT上传的扫描件,直到2003年,一个叫做Ron Burkey的人手动将每一行代码敲了出来,并上传到网上。 Bukey说:“一个叫做Gary Neff的科罗拉多飞行员扫描的。MIT拿到了这些扫描件,然后把图片上传到网上,但很不幸,上传过程中被损坏了,很多地方都看不清。” “后来,我想办法从Gary Neff那搞到了损坏部分的副本,结果发现我补上的那部分竟然是100%正确的。” 尽管Burkey付出了大量心血,这份代码从未在网上流传开来。直到上周一位叫做Chris Garry的前NASA实习生把它上传到GitHub上。 虽然这些代码对今天的程序员意义重大,因为他们可以从中看到前辈们的历史,但是对我们这些门外汉而言,最酷就是能看到码农们在字里行间抖的机灵和那些60年代的梗。 煮个栗子,其中一个文件叫做“燃烧吧_宝贝_燃烧吧- -主要_点火_程序”(BURN_BABY_BURN- - MASTER_IGNITION_ROUTINE),描述如下:
还有引用莎士比亚的著作: 整个AGC中有着无数这样的包袱,那些MIT的程序员可能觉得永远也没人能注意到这些。
它还告诉我们在过去这半个世纪中,人类的科技取得如此大的进步。AGC帮助宇航员在1969年登上月球,它用的内存只有64K,而iPhone 6的内存几乎是它的25万倍。 戳这里可以看到完整的AGC代码。 |
|
来自: 李灏 > 《IT 智能 互联网 机器人 虚拟 科幻》