月面着陸のコードは、いま誰でも読める

「アポロ11号のコードを読む」のレッスン 1 / 8・約2分

月へ降りた着陸船のコンピューターとは何か。着陸の4つの場面で、実際に動いていたコードをのぞきます。

このレッスンで学ぶこと

  • 誘導コンピューターと2つのプログラム

レッスンの内容

これが月へ降りた船

月の上空を飛ぶアポロ11号の着陸船イーグル
月を回る司令船から見たイーグル(NASA)

1969年7月20日、着陸船イーグルは約12分半かけて月面へ降りました。

そのあいだ位置と速さを測り、エンジンの向きや強さを決め続けたのが誘導コンピューターです。

スマホよりはるかに小さな頭脳

このコンピューターが計算の途中で書き換えられるメモリは、約4KBしかありません。

8GBのスマホと比べると、およそ200万分の1の大きさです。

そのコードが、いま読める

このプログラムは約1500ページの印刷物として残り、いまはGitHubで誰でも読めます。

このコースでは、着陸の12分半を本物のコードでたどります。まずは4つの場面をのぞいてみましょう。

4つの場面に、4つのコード

場面をタップしてみてください。その瞬間に動いていた本物のコードが画面に現れます。

2隻に、2つのプログラム

着陸船のプログラムはLuminary099、月を回る司令船のプログラムはComanche055です。

コードには「宇宙飛行士へ: このおかしな装置を回してくれ」という作り手のメモまで残っています。

○か✕か

○か✕か:GitHubで見えるファイルの分け方は、1969年の宇宙船に入っていた形そのままだ。

答え:✕。✕です。宇宙船に入っていたのは銅線に編まれた機械語で、ファイルではありません。GitHubのファイルは印刷物の章分けに沿って打ち直したもので、「Page」の行に元のページ番号が残っています。

着陸の裏側は、コードに残っている

  • 着陸船イーグルは、約4KBの書き換えメモリしかないコンピューターと月へ降りた
  • そのプログラムLuminary099は、いま誰でも読める
  • 降下の場面ごとに、そのとき動いていたコードがある

アポロ11号の着陸船が月へ降りる処理を読みたい。開くプログラムはどれ?

問題:アポロ11号の着陸船が月へ降りる処理を読みたい。開くプログラムはどれ?

  1. Luminary099(正解)
  2. Comanche055
  3. どちらでも同じ

解説:Luminary099です。このコースを終えるころには、ニュースで「1202警報」と聞いても何が起きたか自分の言葉で説明できます。次は、プログラムが銅線で「編まれて」いた話です。

用語

司令船(Command Module)
月を回りながら待ち、飛行士を乗せて地球へ帰る船。アポロ11号ではコロンビアです。
着陸船(Lunar Module)
月へ降りて再び飛び立つための小さな船。アポロ11号ではイーグルと呼ばれました。
Comanche055(Comanche 055)
アポロ11号の司令船に入っていたプログラム。月の周回や地球への帰還を担当しました。
Luminary099(Luminary 099)
アポロ11号の着陸船に載ったプログラム名。月面への降下や上昇を担当しました。
誘導コンピューター(Apollo Guidance Computer (AGC))
船の位置や速さを計算し、エンジンの向きや強さを決める船の頭脳。宇宙飛行士の操作も受け付けました。