国产av一二三区|日本不卡动作网站|黄色天天久久影片|99草成人免费在线视频|AV三级片成人电影在线|成年人aV不卡免费播放|日韩无码成人一级片视频|人人看人人玩开心色AV|人妻系列在线观看|亚洲av无码一区二区三区在线播放

網(wǎng)易首頁 > 網(wǎng)易號 > 正文 申請入駐

NASA把55年前登月代碼甩上GitHub,程序員看完集體沉默

0
分享至


1969年7月20日,阿姆斯特朗踩下那一步時,支撐他的不是勇氣,是6萬行匯編代碼。這些代碼最近被NASA工程師Chris Garry完整甩上GitHub,公共領(lǐng)域,隨便下,隨便改。Virtual AGC項(xiàng)目和MIT博物館花了幾年時間,把MIT博物館里發(fā)黃的紙質(zhì)打印件逐頁掃描、校對、數(shù)字化?,F(xiàn)在你打開網(wǎng)頁就能看見當(dāng)年程序員手寫的注釋——有人吐槽老板,有人抱怨內(nèi)存不夠,有人在代碼里藏了莎士比亞。

兩份代碼,兩個大腦

整個項(xiàng)目拆成兩個倉庫:Comanche055是指令艙(Command Module)的代碼,Luminary099是登月艙(Lunar Module)的代碼。每艘飛船各裝一臺阿波羅制導(dǎo)計(jì)算機(jī)(AGC),4KB內(nèi)存,72KB只讀存儲器,運(yùn)算速度約4萬次每秒。作為對比,你現(xiàn)在用的手機(jī)內(nèi)存是它的百萬倍。

但就是這個"電子算盤",在登月最后階段救了命。

1969年7月20日,登月艙"鷹號"下降過程中,AGC連續(xù)觸發(fā)1201和1202號警報——計(jì)算機(jī)過載。任務(wù)控制中心27歲的Steve Bales在幾秒內(nèi)判斷可以繼續(xù),阿姆斯特朗手動接管,在燃料僅剩4%時找到著陸點(diǎn)。那段處理警報的代碼,現(xiàn)在就在GitHub的ALARM_AND_ABORT.agc文件里,注釋寫得像急診室手冊:記錄警報狀態(tài)、點(diǎn)亮警告燈、區(qū)分"要命的"和"還能忍的"。

另一個被瘋狂轉(zhuǎn)發(fā)的文件只有30行:用多項(xiàng)式逼近計(jì)算正弦余弦的匯編代碼。沒有浮點(diǎn)單元,沒有數(shù)學(xué)協(xié)處理器,程序員用移位和加法硬算三角函數(shù),精度足夠把飛船導(dǎo)航到月球。推上有人截圖感嘆:"我現(xiàn)在的IDE自動補(bǔ)全都比這行數(shù)多。"

代碼里的活人痕跡

真正讓程序員破防的是注釋。MIT儀器實(shí)驗(yàn)室的程序員團(tuán)隊(duì)在60年代寫下了這些代碼,當(dāng)時"軟件工程"這個詞還沒被發(fā)明。他們面對的硬件約束堪稱變態(tài):AGC重量32公斤,功耗55瓦,內(nèi)存用磁芯存儲,每個比特一個小米粒大的磁環(huán),女工手工穿線編織。

在Luminary099的某個文件里,有人寫:"TEMPORARY, I HOPE HOPE HOPE"(臨時的,希望希望希望)。另一處注釋抱怨:"THIS ROUTINE IS CALLED BY PINBALL, WHICH IS CALLED BY THE KEYBOARD, WHICH IS CALLED BY THE ASTRONAUT"(這段代碼被PINBALL調(diào)用,PINBALL被鍵盤調(diào)用,鍵盤被宇航員調(diào)用)——三層調(diào)用棧的無奈,隔著55年都能摸到。

還有更皮的。程序員在代碼里埋了莎士比亞《亨利五世》的臺詞,在顯示模塊的注釋里寫:"IT WILL BE PROVEN THAT A LUNAR LANDING CAN BE ACHIEVED WITH A MANUAL OVERRIDE"(將證明登月可以靠手動覆蓋完成)。這行注釋寫于1969年之前,后來成真了。

這些注釋沒有被"清理",因?yàn)楫?dāng)年沒有代碼審查流水線,沒有Jira工單,只有打印紙和鉛筆。

GitHub倉庫的README里,Chris Garry特意感謝了Virtual AGC項(xiàng)目的Ron Burkey——他從1990年代開始,憑一人之力逆向工程整個AGC系統(tǒng),掃描原始文檔,寫模擬器,讓這段代碼能在現(xiàn)代電腦上跑起來?,F(xiàn)在你用Virtual AGC軟件,可以在Linux、Windows、Mac甚至FreeBSD上編譯執(zhí)行這些匯編,看著1969年的程序在你屏幕上閃爍。

為什么現(xiàn)在放出來

這不是NASA第一次開源老代碼,但Apollo 11的特殊性讓這次發(fā)布有了不同重量。2016年Chris Garry首次上傳時,GitHub服務(wù)器一度被擠爆,程序員們蜂擁而至,有人找bug,有人做表情包,有人單純想摸一摸"人類首次"的代碼質(zhì)感。

更深層的背景是太空計(jì)算的復(fù)興。NASA的Artemis計(jì)劃要2026年送人重返月球,SpaceX的星艦在測試軌道加油,商業(yè)月球著陸器接連發(fā)射。當(dāng)年的AGC代碼成了活教材——不是學(xué)它的匯編技巧,是看一群資源受限的工程師怎么在不可能的任務(wù)里做取舍。

MIT媒體實(shí)驗(yàn)室的David Mindell寫過一本《Digital Apollo》,里面有個細(xì)節(jié):AGC的設(shè)計(jì)哲學(xué)是"讓人類在回路中"。計(jì)算機(jī)負(fù)責(zé)常規(guī)計(jì)算,關(guān)鍵時刻把控制權(quán)交還宇航員。這種"人機(jī)共生"的思路,在今天自動駕駛和AI接管一切的爭論里,反而顯得超前。

55年前的代碼庫,意外成了人機(jī)交互的考古現(xiàn)場。

GitHub上的Star數(shù)已經(jīng)超過幾萬,Issues區(qū)有人認(rèn)真提問:"這段中斷處理為什么不用更高效的算法?"也有人玩梗:"提交了PR,把縮進(jìn)從2空格改成4空格,被拒絕了。"最實(shí)用的貢獻(xiàn)可能是中文翻譯——有開發(fā)者把關(guān)鍵注釋譯成中文,方便國內(nèi)航天愛好者閱讀。

如果你真想跑起來,Virtual AGC項(xiàng)目提供了完整工具鏈。從匯編到二進(jìn)制,從模擬器到虛擬儀表盤,甚至有個叫"Moonjs"的瀏覽器版本,讓你在網(wǎng)頁里體驗(yàn)登月艙的操控界面。當(dāng)年宇航員看的數(shù)字顯示,現(xiàn)在你的Chrome里就能復(fù)現(xiàn)。

代碼開源的副作用是祛魅。你看不到"黑科技",只看到一堆條件跳轉(zhuǎn)和內(nèi)存地址。但正是這種樸素,讓這次發(fā)布有了特殊意義——它證明人類登月不是神話,是具體的人寫的具體的代碼,一行一行,在磁芯存儲器里占著具體的物理空間。

有個細(xì)節(jié)很少被提及:AGC的內(nèi)存分配是手工計(jì)算的。程序員要知道每個變量存在哪個磁芯的哪個位置,因?yàn)榇鎯γ芏忍?,每一比特都是成本。這種"內(nèi)存地理學(xué)"的訓(xùn)練,讓當(dāng)年的工程師對系統(tǒng)有著近乎肌肉記憶的熟悉。今天的我們依賴?yán)厥蘸吞摂M內(nèi)存,某種程度上是能力的退化,也是生產(chǎn)力的解放。

Chris Garry在GitHub的提交記錄里,最后一條是2023年的更新:修正了幾個掃描錯誤,補(bǔ)全了缺失的頁面。Virtual AGC項(xiàng)目還在維護(hù),Ron Burkey已經(jīng)七十多歲,仍在回復(fù)郵件。這個開源社區(qū)的速度很慢,以年為單位,但跨度是半個多世紀(jì)。

現(xiàn)在打開那個倉庫,最先跳出來的文件是MAIN.agc,主程序入口。注釋第一行寫著:"THIS IS THE MAIN PROGRAM FOR THE APOLLO GUIDANCE COMPUTER"。沒有版本號,沒有作者署名,沒有版權(quán)聲明。1969年的程序員大概沒想到,他們的工作會在55年后被全球程序員圍觀、吐槽、致敬。

你編譯運(yùn)行的時候,模擬器會彈出一個復(fù)古的界面:數(shù)字在閃爍,狀態(tài)燈在變化。那是阿姆斯特朗和奧爾德林看過的同款顯示。代碼是死的,但執(zhí)行它的瞬間,某種東西活了過來。

最后一個問題留給打開倉庫的你:如果讓你用4KB內(nèi)存寫一段必須成功的代碼,你會先刪哪行注釋?

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關(guān)推薦
熱點(diǎn)推薦
我住院大兒子出3萬,小兒子一分沒出,出院后我跟大兒子斷絕關(guān)系

我住院大兒子出3萬,小兒子一分沒出,出院后我跟大兒子斷絕關(guān)系

奶茶麥子
2026-04-11 15:45:18
花200元買水果被罵吃死你,懷孕妻子心寒不欲生子,已入冷靜期!

花200元買水果被罵吃死你,懷孕妻子心寒不欲生子,已入冷靜期!

川渝視覺
2026-04-10 15:59:55
北京飛絮的楊柳樹能不能都砍了?官方回應(yīng):不能一砍了之 而是科學(xué)施策

北京飛絮的楊柳樹能不能都砍了?官方回應(yīng):不能一砍了之 而是科學(xué)施策

閃電新聞
2026-04-12 17:25:25
11年前優(yōu)衣庫男女主現(xiàn)狀曝光,他們還在一起生了兩個孩子

11年前優(yōu)衣庫男女主現(xiàn)狀曝光,他們還在一起生了兩個孩子

半糖甜而不膩
2026-04-06 12:09:15
別被騙了!宋朝官帽那兩根“翅膀”,根本不是用來防交頭接耳的

別被騙了!宋朝官帽那兩根“翅膀”,根本不是用來防交頭接耳的

瘋狂的小歷史
2026-04-11 08:47:51
李在明手段實(shí)在高明,避開高市早苗,獨(dú)邀石破茂來場秘密交易!

李在明手段實(shí)在高明,避開高市早苗,獨(dú)邀石破茂來場秘密交易!

娛樂的宅急便
2026-04-12 18:11:21
伊朗官員:美國應(yīng)已明白外交不是發(fā)號施令的舞臺

伊朗官員:美國應(yīng)已明白外交不是發(fā)號施令的舞臺

界面新聞
2026-04-12 18:42:48
存儲巨頭業(yè)績狂飆321倍,這三只核心股或許是真正的香餑餑

存儲巨頭業(yè)績狂飆321倍,這三只核心股或許是真正的香餑餑

慧眼看世界哈哈
2026-04-12 17:28:03
抵達(dá)北京!乒協(xié)出手,鄧亞萍正式上任,新崗位曝光,孫穎莎發(fā)聲

抵達(dá)北京!乒協(xié)出手,鄧亞萍正式上任,新崗位曝光,孫穎莎發(fā)聲

萌蘭聊個球
2026-04-12 13:00:43
一場30分鐘的發(fā)布會與東風(fēng)日產(chǎn)的自我調(diào)整

一場30分鐘的發(fā)布會與東風(fēng)日產(chǎn)的自我調(diào)整

經(jīng)濟(jì)觀察報
2026-04-11 18:36:06
后來,我才明白,斷聯(lián)后不刪除、不拉黑、不聯(lián)系的人,不是在等對方回頭,而是在等自己放下

后來,我才明白,斷聯(lián)后不刪除、不拉黑、不聯(lián)系的人,不是在等對方回頭,而是在等自己放下

品讀時刻
2026-04-12 09:08:19
傷得很深!男子打賞女主播近300萬,想結(jié)婚時才知對方女兒都20歲了:我只顧為愛沖鋒,結(jié)果她全是假話

傷得很深!男子打賞女主播近300萬,想結(jié)婚時才知對方女兒都20歲了:我只顧為愛沖鋒,結(jié)果她全是假話

極目新聞
2026-04-10 15:54:54
4月12日俄烏:短暫的?;鸩⑽凑嬲龑?shí)施

4月12日俄烏:短暫的?;鸩⑽凑嬲龑?shí)施

山河路口
2026-04-12 17:32:30
4月起!有這3類病的,快去社區(qū)領(lǐng)證,一年少花幾千藥費(fèi)!

4月起!有這3類病的,快去社區(qū)領(lǐng)證,一年少花幾千藥費(fèi)!

椰青美食分享
2026-04-12 12:15:14
本?阿弗萊克 & 詹妮弗?加納復(fù)活節(jié)同框:前任育兒的體面天花板

本?阿弗萊克 & 詹妮弗?加納復(fù)活節(jié)同框:前任育兒的體面天花板

述家娛記
2026-04-10 15:54:38
哇這大體格,目測身高175,身形如此的勻稱,男人心中的完美伴侶

哇這大體格,目測身高175,身形如此的勻稱,男人心中的完美伴侶

動物奇奇怪怪
2026-04-12 03:42:39
?;鸷灹艘舶状?!85名議員聯(lián)手逼宮,要罷免特朗普,警告絕不姑息

?;鸷灹艘舶状?!85名議員聯(lián)手逼宮,要罷免特朗普,警告絕不姑息

說歷史的老牢
2026-04-11 15:10:50
文章新飯店開張!開業(yè)當(dāng)天人氣爆滿,文章戴婚戒抱著嬰兒在店合影

文章新飯店開張!開業(yè)當(dāng)天人氣爆滿,文章戴婚戒抱著嬰兒在店合影

一盅情懷
2026-04-10 15:38:43
21歲男子駕駛黑色奧迪在合肥加油后逃單!已被行政拘留

21歲男子駕駛黑色奧迪在合肥加油后逃單!已被行政拘留

南方都市報
2026-04-12 15:04:07
日媒:44%的訪日中國游客資產(chǎn)額超680萬元

日媒:44%的訪日中國游客資產(chǎn)額超680萬元

隨波蕩漾的漂流瓶
2026-04-11 17:16:26
2026-04-12 20:04:49
野生運(yùn)營
野生運(yùn)營
懂點(diǎn)產(chǎn)品,懂點(diǎn)AI,正在努力給平淡日子搞點(diǎn)新花樣。
1259文章數(shù) 11關(guān)注度
往期回顧 全部

科技要聞

理想稱遭惡意拉踩,東風(fēng)日產(chǎn):尊重同行

頭條要聞

女子帶5歲女兒和未滿1歲兒子用餐 女兒墜亡餐廳賠74萬

頭條要聞

女子帶5歲女兒和未滿1歲兒子用餐 女兒墜亡餐廳賠74萬

體育要聞

見證歷史!五大聯(lián)賽首位女性主教練誕生

娛樂要聞

46歲趙達(dá)官宣結(jié)婚!曾與殷桃談婚論嫁

財經(jīng)要聞

美伊談判破裂的三大癥結(jié)

汽車要聞

煥新極氪007/007GT上市 限時19.39萬起

態(tài)度原創(chuàng)

本地
家居
房產(chǎn)
公開課
軍事航空

本地新聞

12噸巧克力有難,全網(wǎng)化身超級偵探添亂

家居要聞

復(fù)古風(fēng)格 自然簡約

房產(chǎn)要聞

土地供應(yīng)突然暴跌!2026??跇鞘校窬执笞?!

公開課

李玫瑾:為什么性格比能力更重要?

軍事要聞

美國副總統(tǒng)萬斯:美伊談判未能達(dá)成協(xié)議

無障礙瀏覽 進(jìn)入關(guān)懷版