Публикации сообщества

Михаил Семионенков • 3 октября 2020

На весах - выбор системы счисления

Этот материал - очередная выдержка из книги "Путешествие в Робокодию".

На этот раз - единственная в книге математическая глава. В популярной форме излагаются двоичная и троичная системы счисления и их связь с миром компьютеров.

По сюжету - героев направили в Школу нарушителей (так уж получилось).

  • 14. ШКОЛА НАРУШИТЕЛЕЙ: НА ВЕСАХВЫБОР СИСТЕМЫ СЧИСЛЕНИЯ

Преподавателем школы был старый скучающий робот. Он очень обрадовался, когда к нему доставили нарушителей: нарушителей уже давно не встречалось, поскольку, даже при желании, попасть без регистрации на ТС—10101 было невозможно: просто Макуша, когда нужна была помощь Геле и терпящему бедствие кораблю, совершил невозможное и прошёл там, где пройти невозможно (так уж бывает, что необходимость помочь попавшим в беду заставляет иногда совершить невозможное).

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

После выполнения необходимых формальностей, представления преподавателя, официального объявления причины, по которой Макуша и его сопровождающие доставлены в Школу, преподаватель начал свою лекцию.

ТС—10101 — это Транспортная Система 21—ого века, — начал преподаватель.

А почему 10101? — не выдержал Миша.

Преподаватель укоризненно посмотрел на нарушителя порядка:

Решите-ка сначала следующую задачу: есть весы с двумя чашами (рис14.1),

 

весы


 

Рис. 14.1. Весы с двумя чашами


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

Маша и Миша начали увлечённо решать задачу, а Макуша с интересом наблюдал за ребятами.

Попробуй и ты решить задачу, прежде, чем продолжать чтение.

Чтобы взвесить 1 грамм, нужна гиря 1 грамм! — воскликнул Миша.

Америку открылзасмеялась Маша, но Миша был прав: решение задачи надо начинать сначала.

Чтобы взвесить два грамма… — Миша немного замялсяНужна ещё одна гиря 1 грамм! — радостно заключил Миша.

Постой, — сказала Машаты собираешься добавлять каждый раз по граммовой гире? Так нам понадобится 31 гиря! Так дело не пойдёт. Давай добавим гирю 2 грамма.

А что, потом будем добавлять гирю 3 грамма, 4 грамма, скажешь тоже!

Не суетись, МишаМаша была старше Миши (на 45 минут), и иногда вела себя как старшая. — Давай сначала изучим ситуацию с двумя гирями: 1 грамм и 2 грамма. Мы можем взвесить 1, 2 и 3 грамма (1 + 2 = 3), значит, гиря 3 грамма нам не нужна, верно?

Верносо вздохом подтвердил Миша: он был немного расстроен тем, что погорячился и приписал Маше то, что она не говорила.

Значит, дальше нам нужна гиря 4 грамма! — заключила Маша.

Миша начал быстро считать:

5 = 4 + 1

6 = 4 + 2

7 = 4 + 2 + 1

И следующая гиря — 8 граммов! — К Мише вернулся азарт решателя

Постой, попробую назвать следующую гирю… — 16 граммов! — воскликнула Маша.

Ну, это только гипотеза! — Миша употребил одну из дедушкиных фраз: этой фразой дедушка давал понять, что предположения, даже очень правдоподобные, нужно проверять и доказывать.

Маша, мы же ещё ничего не проверили с гирей 8 граммов, как ты можешь назвать следующую?

Миша, смотри: когда мы добавили гирю 2 грамма, то добавился возможный вес 2 грамма И добавилась возможность взвесить 2 + 1 грамм, то есть стало возможно взвесить грузы от 1 до 3 граммов, а когда, добавилась гиря 4 грамма, то, кроме четырех граммов, появилась возможность взвесить грузы с весом 4 + все ранее возможные веса. И с гирей 8 ситуация та же самая: мы можем после 8 граммов взвесить ещё 7 вариантов, которые у получаются с гирями 1, 2, 4. Значит мы можем взвешивать до 15 граммов (8 + 7 = 15), и следующая гиря — 16

Здорово! — порадовался за сестру Миша. И тут его осенило:

1

2 = 1 * 2

4 = 2 * 2

8 = 4 *2

16= 8 * 2

Этот набор можно продолжать бесконечно!

32 = 16*2

'Сообразительные биоособи,' — удивился преподаватель.

Так, задачу вы решили, зачёт. Продолжим.

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

В Робокодии, естественно, официальной системой счисления является именно двоичная, где есть всего две цифры: 0 и 1. Десятичная система используется для удобства гостей из Заэкранья.

Маша и Миша переглянулись: теперь стало понятно, почему они в Робокодии часто сталкивались с числами, состоящими только из единиц и нулей.

Если в десятичной системе счисления 'вес' разрядов увеличивается в 10 раз: единицы, десятки, сотни и так далее, то в двоичной системев 2 раза:

1 (в двоичной системе) = 1 в десятичной системе

10 = 2

100 = 4

1000 = 8

10000 = 16

Гири! — воскликнул Миша

Верно. Вы сами выбрали для компактного набора гирь именно двоичную систему, хотя вам, конечно, привычнее архаичная десятичная система. Двоичная системавыбор компьютеров!

Значит, 10101 в ТС—10101 — это запись в двоичной системе? тогда 10101 — это то же, что выбрать гири 1, 4 и 16?

1 + 4 + 16 = 21!

ТС — 10101 — это Транспортная Система — 21: двадцать первого века!

О чём я вам и сказал в самом начале. — удовлетворённо сказал преподаватель.

Получается, двоичная системасамая выгодная для хранения числовых данных? — включился в разговор Макуша.

Как вам сказатьРешите ещё одну задачу: гири можно класть на обе чаши, взвешивать нужно от 1 до 40 граммов.

Ребята и Макуша решают задачу, попробуй решить и ты.

В итоге у команды получился набор гирь 1, 3, 9, 27.

Так это получилась троичная система, правда? Ведь каждая гиря в 3 раза тяжелее предыдущей. — заключил Макуша.

Совершенно верно! — преподаватель обрадовался, что можно, наконец, похвалить и робота, для которого, собственно, это занятие и проводилось.

В шестидесятых годах прошлого века была даже создана ЭВМ, работающая в троичной системе. В её троичной системе использовались три цифры

0, 1, 2, — выпалил Миша.

Преподаватель даже засмеялся (хотя, конечно, это было не очень профессиональносмеяться над ошибкой того, кто думает и пытается разобраться в вопросе самостоятельно, а не просто слушает и запоминает, не задумываясь о существе вопроса).

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

Слушатели недоумённо смотрели на преподавателя, не понимая, какой из всего этого следует вывод.

0, 1 и … — преподаватель выдержал паузу, медленно обводя взглядом немногочисленную аудиторию и словно давая шанс Макуше и ребятам справится с задачей самостоятельно

-1 — торжественно заключил преподаватель.

Как? — хором воскликнули Макуша, Миша и Маша.

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

Гиря лежит вместе с грузом, то -1 — Маша первой поняла идею.

Вотвот

Например, трёхзначное число 1 (—1) (—1) = 9 — 3 — 1 = 5 — добавил преподаватель: именно так была устроена троичная система первого и единственного компьютера с троичной системой.

Красиво, — сказал Миша, а Макуша спросил:

Так почему тогда компьютеры используют двоичную, а не троичную систему?

Да просто для троичной системы не нашли приемлемого технического решения: миниатюрное устройство, которое может находиться в одном из двух состояний, то есть знак в двоичной системе, оказалось сделать гораздо проще, чем знак в троичной системе. Кто знает, может, в будущем найдётся нечто, что можно использовать в качестве знака троичной системы, и идея компьютера с троичной системой ещё вернётся, а пока двоичная система полностью доминирует. Но нам пора вернуться к главной теме


 

Кол-во комментариев: (4)

Ольга Тузова
Михаил Семионенков Очень понравилась история, спасибо. Может быть, троичную машину назвать по имени - Сетунь? Тогда из некоторой абстракции она переходит в реальность? И не поняла, почему в середине текста ТС прибавила ещё один ноль. Цитата: Значит, 101010 в ТС—101010 — это запись в двоичной системе? тогда 101010 — это то же, что выбрать гири 1, 4 и 16?
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии
  • Михаил Семионенков
    Ольга, спасибо! Лишний 0 - позорная опечатка, конечно. По поводу названия машины - я колебался и решил не приводить. Типа, информация боковая, просто скользнуть. Конкретность с одной стороны, обязывает., с другой - легко гуглится. Кстати, я прямо сейчас погуглил и ... обнаружил у себя плагиат: идею показать системы счисления через весы сформулировал Фибоначчи ещё в 800+ лет назад. Какой удар со стороны классика! Я-то шёл к весам от Сетуни: цифра (-1) навела на мысль, что это можно иллюстрировать весами с двумя чашами. Пожалуй, буду чинить. Спасибо, ещё раз.
  • Войдите или зарегистрируйтесь, чтобы оставлять комментарии