Флажки с рисунками и ASCII. Ищем шифры в фильме «Марсианин»







В продолжение космической темы месяца сегодня мы погружаемся в мир #криптокино и поговорим о технологиях кодирования и телекоммуникации в картине Ридли Скотта «Марсианин». Это история об испытаниях случайно оставленного на Красной планете ученого Марка Уотни, основанная на одноименном романе Энди Вейера. Главный герой вынужден применить всю свою смекалку, научный метод и критическое мышление, чтобы в одиночку выжить на чужой планете, выйти на связь с Землей, дождаться помощи и вернуться домой.
О чем фильм?
В результате песчаной бури астронавт Марк Уотни остается на Марсе в полном одиночестве. Связи с Землей нет: антенна разрушена, а команда, считая его погибшим, уже покинула планету. Марку нужно не просто выжить в экстремальных условиях, но и придумать, как подать сигнал НАСА — сообщить, что он жив, и обсудить план по его спасению.
Исследуя поверхность Марса, Уотни находит марсоход Mars Pathfinder, погребенный с 1997 года под песком. Он приводит Pathfinder в рабочее состояние: теперь ученые на Земле видят изображение с его камер и могут ими управлять. Проблема передачи информации на нашу планету решена. А вот как получить ответный сигнал из дома?
Как получить сообщение с Земли?
Уотни придумывает расположить вокруг марсохода флажки с символами, чтобы специалисты НАСА направляли на них вращающуюся камеру, а он мог считывать их послания. Но сколько символов использовать? Если вращать камеру направо для сигнала «да» и налево для сигнала «нет», можно передавать двоичный код — им в теории можно закодировать любую информацию. Но Уотни пришлось бы записывать такие послания только вручную, что невероятно медленно. А если использовать все 26 букв алфавита и пробел, деления станут слишком мелкими — с Земли будет сложно прицелиться камерой в нужный флажок.
16 — понятно и машине, и человеку!
На помощь приходит шестнадцатеричная система счисления. В ней используются цифры от 0 до 9 и буквы от A до F. Эта система оптимальна: ее легко воспринимать человеку, и при этом она идеально подходит компьютерам. С ее помощью можно передавать двоичные сигналы, в том числе компьютерные программы.
ASCII — стандартный код для обмена информацией
Именно шестнадцатеричная система позволяет передавать ASCII-код — стандарт кодирования, разработанный еще в 1963 году. В нем каждому символу (латинице, цифрам и другим символам) соответствует свое число. Используя специальную таблицу, такие сообщения легко перевести в привычный текст.
Зачем это было нужно?
С помощью таких закодированных сообщений специалистам НАСА удалось передать Марку инструкцию по перепрограммированию его ровера. Это позволило установить прямую связь между ровером, аппаратом Pathfinder и Землей. В конечном счете именно это помогло герою и ученым обсудить и реализовать план по спасению.
В нашем музее есть отдельный раздел, посвященный понятиям шифрования и кодирования. Здесь посетители могут не только узнать об ASCII, Unicode и других системах кодирования, но и разобраться, чем шифр отличается от кода и как научить компьютер «понимать» человека.
Автор: Егор Ефремов