Л. — В своем вопросе, Незнайкин, ты использовал то самое слово, которое служит ответом. К сумматору четверок, состоящему из двух элементов
На рис. 132 я изобразил для тебя устройство последующего звена сумматора. Все последующие каскады, начиная с каскада четверок (
Рис. 132.
Н. — Что же тогда можно назвать сложным? Да меня бросает в дрожь, как только я вспомню, что каждый из прямоугольников, скромно названных тобой буквой
Л. — Не волнуйся, Незнайкин. Системы для выполнения арифметических вычислений всегда состоят из большого количества одинаковых и относительно простых устройств, которые в свою очередь распадаются на еще более простые узлы. Но как бы то ни было, сумматор, структурная схема которого изображена на рис. 131 и 132, способен мгновенно выдать сумму двух «параллельных» чисел, поданных одно за другим на его входы.
Н. — А если мы захотим сложить числа, представленные в последовательной форме?
Л. — В этом случае следует взять аналогичное устройство, используя только два элемента
Н. — Хорошо, теперь я более или менее умею складывать. Но скажи, пожалуйста, как производят вычитание?
Л. — Обычно проблему обходят. Предположи, что нам нужно из числа
Н. — Что ты называешь противоположным
Л. — Очень просто, это число, которое получается из числа
Н. — Иначе говоря, одиннадцати.
Л. — Браво, Незнайкин. Ты очень хорошо усвоил двоичную систему счисления. Следовательно, число
001 011,
чтобы оно, как и число
110 100.
А теперь позволь мне, Незнайкин, задать тебе один вопрос: что мы получим, если это противоположное число прибавим к числу
Н. — Я думаю, что это сложение не представляет труда везде, где в одном из чисел стоит 1, в другом числе стоит нуль. Поэтому сумма этих двух чисел будет равна шестизначному числу, где все цифры 1, т. е. мы получим 111111.
Л. — Браво, совершенно верно! А теперь прибавь к полученному результату одну единицу.
Н. — Хорошо, если я прибавлю эту единицу, то сумма единиц даст нам нуль. Я переношу 1 в следующий разряд, прибавив ее к имеющейся здесь 1, я должен записать нуль на месте двоек и запомнить 1… Хм, очень любопытно, в итоге я получу 1000000.
Л. — Правильно. Но теперь в твоем числе семь знаков. Если пренебречь последним переносом, у нас останется лишь нуль. Как ты видишь, в результате сложения противоположного
Н. — Я вижу, что в полученном результате слева стоит единица в скобках. Это несомненно появилось вследствие того, что ты не хочешь учитывать последний перенос.
Л. — Совершенно верно. Если теперь прибавить еще одну единицу, то в результате получим 100010. Преобразовав двоичное число в десятичное, получим 34, которое точно соответствует разности 45 и 11.
Н. — Должен признаться, что, не прибегая к двоичной системе счисления, я получил бы верный результат значительно быстрее!
Л. — Ты, может быть. Но электронные машины считают в двоичной системе счисления быстрее, чем в десятичной, даже если учитывать время, необходимое для преобразования.