知識の枝

"All is well"

火星探査機からASCIIコードを学ぶ

約270日前 2021年3月1日23:52
デジタル
科学

改訂履歴


2021/3/1 投稿

1. 背景


2021年2月22日、NASAは火星探査機Perseveranceが火星に着陸するまでの動画を公開しました。
(Perseverance:忍耐力、根気強さ、不屈の努力)



約3分間の着陸動画はパラシュートが開くシーン(00:12~)から始まります。
このパラシュートの模様には探査機チームのモットーが込められており、
その隠された言葉は「DARE MIGHTY THINGS」
「あえて壮大なことに挑戦しよう」という意味です。

この模様はASCIIコードを使用することで解読できるようです。

インターネット上で解読された後、
Twitter上で答え合わせがなされました。


パラシュートの模様は上の画像の意味を表すようです。
それでは実際に解読してみましょう!


2. ASCIIコード


ASCII(アスキー)コードとはなんでしょうか?
見たことはあるかもしれませんが、中身までは知らなかったので調べてみました。

以下、他サイト様からの引用です。

■ASCIIコードとは■
コンピュータは二進数しか扱えないため,文字データも二進数(つまり整数)として表現される.コンピュータは,ある二進数を特定の文字だと思いこんで処理する約束になっている.このような,文字を表現する二進数のことを特に文字コードと呼ぶ.

そこで,どの数値とどの文字を対応させるかを決めて,一覧表を作成することなる.現代のコンピュータでは標準的な文字コード表が決まっている.特にアルファベットと記号ではASCII(アスキー)コード表が使用される.

http://www3.nit.ac.jp/~tamura/ex2/ascii.html



あらかじめ下記のような対応表を準備しておき、
「数字」と「文字」の紐づけをします。



Dec = decimal = 10進数
Char = character = 文字

ASCIIコードは7bitで作られているので2の7乗 = 128個の紐づけが可能です。


3. 模様の2進数化





パラシュートのビラビラは円周を80当分するように折り目が付けられています。
また模様は4階層に分かれており、内側から外側に向かって解読します。

赤い扇形の模様から時計回りになるように下記ルールで数字を割り振ります。

白 = 0
赤 = 1

上記ルールを当てはめるとパラシュートの模様は2進数に変換されます。




4. 解読


2進数を10進数に変換し、先ほどのASCIIコード表と対比してみましょう。


内側の模様の意味が解読できました!
「DARE」です!

同様の方法で解読を進めると先ほどの言葉があらわれます。
「DARE MIGHTY THINGS」

簡単な解説記事を読むだけでは分からなかったので、自分で実際にやってみました!
面白かったし理解が深まった気がします。