В предыдущей статье наши герои вели разговор о сети дорог, которые соединяют друг с другом отдельные внутренние районы компьютера, о так называемых МАГИСТРАЛЯХ. Каролек узнал, что существуют три МАГИСТРАЛИ: АДРЕСНАЯ, ДАННЫХ и УПРАВЛЯЮЩАЯ. Их еще называют внутримашинными каналами связи. Когда же беседа коснулась понятия АДРЕС и двоичной системы счисления, разговор внезапно прервался.

* * *

— Почему ты сегодня такой злой? — спросил Битек друга.

— Не злой, а расстроенный, — угрюмо ответил Каролек. — А тебе было бы весело, если бы ты ничего не понимал?

— А чего же ты не понимаешь? — заинтересовался Битек.

— Да ничего! Одна муть какая-то в голове от последней встречи. Но сегодня я не намерен только поддакивать. Настройся объяснять толком. Давай рассказывай, что такое ДВОИЧНАЯ СИСТЕМА СЧИСЛЕНИЯ и причем здесь эти ваши шарики.

— Только и всего? Разумеется, объясню. Поймешь основной принцип, и сразу все станет проще простого. Скажи-ка, какую систему счисления ты знаешь.

— Как какую? Нормальную!

— Это мне ничего не говорит Сколько в «нормальной системе» разных цифр?

— Девять. От одного до девяти, — ответил мальчик.

— Гм. А ноль — случайно, не цифра?

— Забыл. Выходит десять.

— Ага, десять. А если десять, то система, которой ты пользуешься, называется десятичной. Правда?

Каролек почесал затылок. Он всегда это делал, когда узнавал что-то настолько очевидное, что сам удивлялся, как это не пришло ему самому в голову.

— Ну хорошо. Одно мы установили, — продолжал Битек. — Пошли дальше. Почему ты считаешь, что десятичная система, как ты сказал, нормальная?

— Нас именно по ней учат! А кроме того, на руках ведь тоже десять пальцев! — Каролек явно торжествовал.

— И ты считаешь, что это самое важное? — весело посмотрел на друга микроник. — А я докажу, что ты неправ. У ног тоже десять пальцев, т. е. всего двадцать. Да? К этому можно добавить уши — будет двадцать два, а если прибавить нос, то…

— Битек! Перестань смеяться надо мной! Ну, что ты в самом деле?

— Ладно-ладно, не обижайся! Я попросту хотел доказать, что десятичная система счисления — одна из многих возможных. А то, что для тебя она нормальная, вытекает только из твоей привычки. Точно также можно привыкнуть к пятеричной или двадцатеричной системе.

— Убедил! Значит, если я правильно понял, одной из возможных является двоичная система счисления. А следовательно, в ней только две цифры: единица и двойка? Да?

— Почти. Потому что не единица и двойка, а ноль и единица. В десятичной системе цифры десять нет, так почему бы в двоичной — быть двойке?

— Ты прав. Я не подумал об этом, — сказал пристыженный Кароль.

— Не огорчайся, — утешил его микроник, — главное, что ты понял. Думаю, и дальше в моем объяснении все окажется таким же простым, как до сих пор. Теперь обратим внимание на числа десятичной системы. Потом попытаемся сделать вывод, какие общие законы правят разными числовыми системами. Возьмем, например, число 264. Ты когда-нибудь задумывался, что это значит? Это число записано с помощью трех цифр: двойки, шестерки и четверки. Но читаешь ты его не как два, шесть, четыре, а как двести шестьдесят четыре. Не так ли?

— Да, — Каролек начинал понимать, в чем дело.

— Отлично! Таким образом, запись означает, что число 264 — это не что иное, как две сотни, шесть десятков и четыре единицы. Его можно записать по-разному:

264 = 200+ 60 + 4

или:

264 = 2 × 100 + 6 × 10 + 4 × 1

— Согласен? — спросил Битек.

Каролек кивнул головой. Эти записи были ему известны, но уже догадывался, что за ними последует очень интересное.

Битек между тем продолжал.

— А теперь подумаем, как можно записать сто. Как 10 умноженное на 10, тогда запишем:

264 = 2 × 10 × 10 + 6 × 10 + 4 × 1

Думаю, это тебе понятно. Да? Тогда попробуй сам написать подобным образом число 1375. Хорошо?

Каролек без всяких колебаний написал:

1375 = 1 × 1000 + 3 × 100 + 7 × 10 + 5 × 1

— Отлично! Вижу, мы поняли друг друга, — сказал микроник. — Но раз 100 = 10 × 10, то тысяча равна 10 умноженному на 10 и умноженному на 10. Подставим вместо 1000 и 100 произведение десятков, и число примет такой вид:

1375 = 1 × 10 × 10 × 10 + 3 × 10 × 10 + 7 × 10 + 5 × 1

— Битек, вроде бы я уже знаю, в чем дело, — сказал Каролек, для себя он сделал большое открытие. — Эти десятки здесь не случайно. Ведь это десятичная система счисления. Я прав?

— Разумеется! Именно к этому мы и стремились. А скажи-ка, не заметил ли ты чего-то интересного в этих записях.

— Кажется, заметил, — ответил Каролек. — Если смотреть на запись с правой стороны, то умножения на 10 нет, потом есть одно, потом мы умножаем самих на себя два десятка, потом три десятка друг на друга.

И выходит — с каждым шагом влево растет число десятков, на которое нужно умножить. Впрочем, давай-ка запишем именно так наше сложение:

1 × 1000 = 1 × 10 × 10 × 10

3 × 100 = 3 × 10 × 10

7 × 10 = 7 × 10

5 × 1 = 5 × 1

— Поздравляю! — микроник был явно в восторге от наблюдательности и сообразительности мальчика. — Мне остается лишь добавить что вместо умножения одного и того же числа много раз подряд давно уже введено понятие степени. Вместо того, чтобы писать 10 × 10, можно сказать, что это 10 во второй степени. А 10 × 10 × 10 равно 10 в третьей степени и т. д.

— А само 10 — это 10 в первой степени, — добавил Каролек. — Не так ли?

— Ты совершенно прав, — похвалил его приятель.

— А что делать с единицей? Разве она степень десятка? — спросил мальчик.

— Конечно степень. Десять в степени ноль! Понимаешь, почему? Потому, что мы не умножаем его ни на какой десяток, т. е. это ноль десятков.

— Вроде логично, — неуверенно ответил Каролек. — А что это дает?

— Очень много. Это дает общее правило, как создавать новые системы счисления, так как пользуясь степенями, наши числа можно записать в следующем виде:

Если теперь обратишь внимание только на цифры, стоящие в очередных степенях десятка, получишь точно такую же запись, как и с левой стороны знака равенства. Иначе говоря, каждое число в десятичной системе можно записать в виде степени: нужно взять очередные цифры этого числа и умножить их на соответствующую степень десяти. А отсюда — лишь маленький шаг до других систем счисления.

— Погоди, — прервал Каролек. — Я уже понял. Достаточно вместо десятка взять другое число, а такая запись будет сделана уже в другой системе. Да?

— Конечно! Я уже говорил, что это очень просто! А если ты такой понятливый, скажи, что означает число 1101 в двоичной системе.

— Одну минуточку. Это нетрудно. Это будет… это будет… Число 1101 в двоичной системе — это 13 в десятичной.

Каролек прямо подпрыгнул от радости, когда Битек утвердительно кивнул головой. Все это действительно просто! Мальчик очень обрадовался, что ему удалось понять, в чем заключается двоичная система. А цвета шариков стали понятны сами собой: это были две цифры двоичной системы. Он хотел поделиться этим с Битеком, но Битека уже не было.