Джордж и код, который не взломать | страница 7





– Берил, – обратился к даме Эрик, вручая ей бокал хереса, – позвольте представить вам Анни и Джорджа. Анни, Джордж, это Берил Уайльд.

Берил благосклонно приняла напиток и сразу отпила глоток.

– Очень приятно! – сказала она и приветственно помахала рукой.

– Берил – один из величайших математиков нашего времени, – произнёс Эрик очень торжественно.

Берил расхохоталась.

– Ах, ну что за нелепость, право!

– Но это действительно так! – возразил Эрик. – Если бы не математический гений Берил, погибло бы гораздо больше миллионов людей.

– Каких людей? – спросил Джордж.



Анни достала смартфон и принялась искать в Википедии статью про Берил Уайльд.

– Как правильно пишется ваша фамилия? – спросила она.

– Вся информация обо мне защищена законом о государственной тайне, – сказала Берил, догадавшись, для чего Анни её фамилия. Её выцветшие бледно-голубые глаза проницательно блеснули. – До сих пор, по прошествии стольких лет. Так что в интернете меня не найти.

Эрик указал на загадочный предмет на кофейном столике напротив дивана, больше всего напоминавший старомодную пишущую машинку.

– Это, – произнёс он выразительно, – не что иное, как «Энигма», шифровальная машина, которую во времена Второй мировой войны применяли для кодирования сообщений. Даже перехватив такое сообщение, разведчики не могли его прочитать. А Берил была в числе немногих математиков, сумевших расшифровать код «Энигмы». Благодаря чему война закончилась скорее, чем могла бы, и погибло гораздо меньше людей.

Системы счисления

Десятичная

Система, которой мы обычно пользуемся при счёте – десятичная система, – имеет основание 10, по числу цифр от 0 до 9.

Мы считаем от 1 до 9 и переходим к следующему разряду – десяткам. Например:

36 = 3 × 10 плюс 6 × 1;

48 = 4 × 10 плюс 8 × 1;

148 = 1 × 100 плюс 4 × 10 плюс 8 × 1

и так далее.


Двоичная

В первых компьютерах применялась двоичная система счисления. Она названа так потому, что её основание – число 2: это значит, что в ней есть только две цифры – 0 и 1.

10 = 1 × 2 плюс 0 × 1 – то есть число 2 в десятичной системе;

11 = 1 × 2 плюс 1 × 1 – то есть число 3;

111 = 1 × 4 плюс 1 × 2 плюс 1 × 1 – то есть число 7.

В микросхемах первых компьютеров было всего два положения: «выключено» и «включено»; поэтому двоичный код – код, основанный на двоичной системе, – хорошо подходил для вычислений: ноль в ней соответствовал положению «выключено», а единица – «включено».


Шестнадцатеричная

Современные компьютеры намного сложнее, и код часто пишут в шестнадцатеричной системе счисления с основанием 16. Счет идёт от 0 до 9, а дальше 10 обозначается буквой A, 11 – буквой B и так далее до буквы F (то есть до 15).