亚洲中文字幕乱码亚洲-蜜桃成熟视频在线观看-免费中文字幕视频在线-中国五十路熟妇洗澡视频-亚洲av伊人啪啪c-国产精品成人一区二区-国产自拍视频一区在线观看-成人一区不卡二区三区四区-亚洲情精品中文字幕99在线

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

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

0
分享至


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

兩份代碼,兩個大腦

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

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

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

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

代碼里的活人痕跡

真正讓程序員破防的是注釋。MIT儀器實驗室的程序員團隊在60年代寫下了這些代碼,當時"軟件工程"這個詞還沒被發(fā)明。他們面對的硬件約束堪稱變態(tài):AGC重量32公斤,功耗55瓦,內存用磁芯存儲,每個比特一個小米粒大的磁環(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調用,PINBALL被鍵盤調用,鍵盤被宇航員調用)——三層調用棧的無奈,隔著55年都能摸到。

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

這些注釋沒有被"清理",因為當年沒有代碼審查流水線,沒有Jira工單,只有打印紙和鉛筆。

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

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

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

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

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

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

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

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

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

有個細節(jié)很少被提及:AGC的內存分配是手工計算的。程序員要知道每個變量存在哪個磁芯的哪個位置,因為存儲密度太低,每一比特都是成本。這種"內存地理學"的訓練,讓當年的工程師對系統(tǒng)有著近乎肌肉記憶的熟悉。今天的我們依賴垃圾回收和虛擬內存,某種程度上是能力的退化,也是生產力的解放。

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

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

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

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

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

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.

相關推薦
熱點推薦
霍爾木茲海峽,“隔空決戰(zhàn)”

霍爾木茲海峽,“隔空決戰(zhàn)”

中國新聞周刊
2026-04-16 12:05:59
五年才發(fā)現(xiàn)貸款年利率從3.8變8.7,常熟農商銀行對未提供合同致歉,但認為客戶訴求不合理

五年才發(fā)現(xiàn)貸款年利率從3.8變8.7,常熟農商銀行對未提供合同致歉,但認為客戶訴求不合理

極目新聞
2026-04-16 18:18:31
八旗中的“正”“鑲”旗有什么區(qū)別?進來看看,別再鬧笑話了!

八旗中的“正”“鑲”旗有什么區(qū)別?進來看看,別再鬧笑話了!

凡人侃史
2026-04-15 23:19:03
張雪的貴人,那個漂亮老板娘要去敲鐘了

張雪的貴人,那個漂亮老板娘要去敲鐘了

科技每日推送
2026-04-16 14:36:05
邁阿密國際新帥:我和梅西確實有交情,但不代表每天要盯著他

邁阿密國際新帥:我和梅西確實有交情,但不代表每天要盯著他

懂球帝
2026-04-16 01:35:02
鄧文迪還是牛!前夫默多克95歲生日宴,她和兩個女兒精心打扮出席

鄧文迪還是牛!前夫默多克95歲生日宴,她和兩個女兒精心打扮出席

照見古今
2026-03-12 19:27:38
特朗普被逼退錢,萬億大蛋糕,中國連邊都沾不上,更大麻煩在后面

特朗普被逼退錢,萬億大蛋糕,中國連邊都沾不上,更大麻煩在后面

丁羂解說
2026-04-16 15:28:58
特朗普這次惹錯人了!發(fā)AI圖把自己當耶穌,罵完教皇,盟友反水了

特朗普這次惹錯人了!發(fā)AI圖把自己當耶穌,罵完教皇,盟友反水了

愛吃醋的貓咪
2026-04-16 20:51:36
到老了,如果發(fā)現(xiàn)兄弟姐妹之間沒有人情味了,最好先做好這三件事

到老了,如果發(fā)現(xiàn)兄弟姐妹之間沒有人情味了,最好先做好這三件事

洞讀君
2026-04-16 21:10:03
遲重瑞與陳麗華大孫女同框,這哪是繼爺爺,分明就是親爺爺!

遲重瑞與陳麗華大孫女同框,這哪是繼爺爺,分明就是親爺爺!

情感大頭說說
2026-04-14 13:48:43
“跨考計算機,就是這下場”,武大復試:1/3的考生機試0分被斬殺

“跨考計算機,就是這下場”,武大復試:1/3的考生機試0分被斬殺

妍妍教育日記
2026-04-16 08:30:09
湘南民宅翻修驚現(xiàn)毛主席80年前舊照,專家鑒定彌足珍貴可補史遺缺

湘南民宅翻修驚現(xiàn)毛主席80年前舊照,專家鑒定彌足珍貴可補史遺缺

云霄紀史觀
2026-04-14 02:08:48
海關總署點名!張雪機車太硬核,每出口10臺摩托,4臺都是中西

海關總署點名!張雪機車太硬核,每出口10臺摩托,4臺都是中西

劉哥談體育
2026-04-16 01:27:55
重磅信號!四大一線城市房價全漲

重磅信號!四大一線城市房價全漲

中國房地產報官方號
2026-04-16 17:53:13
得知范漢杰每月只有60元生活費,周恩來親自解決:還按200元發(fā)放

得知范漢杰每月只有60元生活費,周恩來親自解決:還按200元發(fā)放

大運河時空
2026-04-16 10:30:03
附加賽最大贏家!兩場打完白撈兩個首輪簽,沖冠還有望拿下狀元簽

附加賽最大贏家!兩場打完白撈兩個首輪簽,沖冠還有望拿下狀元簽

你的籃球頻道
2026-04-16 14:55:30
巴基斯坦空軍傳來喜訊,6架空警500今年抵達,首批殲-35A一同交付

巴基斯坦空軍傳來喜訊,6架空警500今年抵達,首批殲-35A一同交付

傲傲講歷史
2026-04-16 02:21:45
華為把智能手表做成了"全面屏":83%屏占比藏著什么野心

華為把智能手表做成了"全面屏":83%屏占比藏著什么野心

我是一個粉刷匠2
2026-04-16 09:14:33
最新確認:38人遇難的阿客機墜毀系遭俄羅斯誤擊

最新確認:38人遇難的阿客機墜毀系遭俄羅斯誤擊

第一財經資訊
2026-04-16 14:12:24
是毒品也是藥品!武漢植物園罌粟花盛開吸引大批游客

是毒品也是藥品!武漢植物園罌粟花盛開吸引大批游客

映射生活的身影
2026-04-15 18:39:37
2026-04-16 21:51:02
野生運營
野生運營
懂點產品,懂點AI,正在努力給平淡日子搞點新花樣。
1493文章數(shù) 25關注度
往期回顧 全部

科技要聞

趙明:智駕之戰(zhàn),看誰在大模型上更高效

頭條要聞

上海業(yè)主傻眼 安保、保潔突然全離崗小區(qū)垃圾堆積成山

頭條要聞

上海業(yè)主傻眼 安保、保潔突然全離崗小區(qū)垃圾堆積成山

體育要聞

皇馬拜仁踢出名局,但最搶鏡的還是他

娛樂要聞

絲芭傳媒創(chuàng)始人王子杰去世,享年63歲

財經要聞

海爾與醫(yī)美女王互撕 換血抗衰生意迷霧

汽車要聞

空間大五個乘客都滿意?體驗嵐圖泰山X8

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

親子
家居
旅游
手機
公開課

親子要聞

寶藍和爸爸一起過圣誕節(jié),裝扮圣誕樹,還做了美味的蛋糕~

家居要聞

智能舒適 簡約風尚

旅游要聞

新民視頻 | 限時一個月!上海樂高樂園“悟空小俠”主題月4月17日啟幕

手機要聞

大疆官宣Pocket 4P:雙攝口袋相機 1英寸+3x長焦

公開課

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

無障礙瀏覽 進入關懷版