Я математик

От аналоговых вычислительных машин к цифровым.
Отрывки из «Я математик» Норберт Винер (основатель кибернетики):

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

Русские крестьяне при арифметических расчетах в какой-то мере использовали такое представление чисел, называемое двоичной системой счисления]. Большое преимущество этой системы перед обыкновенной состоит в том, что таблица умножения сводится здесь к единственному утверждению, что 1 x 1 = 1.

Нетрудно понять, что механизировать арифметические расчеты, выполняющиеся в двоичной системе счисления, значительно легче, чем обычные вычисления над числами, записанными в десятичной системе счисления. Это и было учтено в машине лаборатории телефонной компании Белла, использующей двоичную запись чисел. Единственным серьезным недостатком такой машины является то, что во всех остальных случаях люди все-таки пользуются десятичной системой и встречающиеся числовые данные всегда представляются в виде десятичных чисел. Тем не менее в тех случаях, когда приходится выполнять много громоздких вычислений, часто бывает выгодно пренебречь этим обстоятельством и перевести все исходные данные в двоичную систему, а все окончательные результаты — обратно в десятичную.

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

1 дюйм — эталон в 1 дюйм,

2 дюйма — эталон в 2 дюйма,

3 дюйма — эталон в 2 дюйма и эталон в 1 дюйм,

4 дюйма — эталон в 4 дюйма,

5 дюймов — эталон в 4 дюйма и эталон в 1 дюйм,

6 дюймов — эталон в 4 дюйма и эталон в 2 дюйма,

7 дюймов — эталон в 4 дюйма, эталон в 2 дюйма и эталон в 1 дюйм,

8 дюймов — эталон в 8 дюймов,

9 дюймов — эталон в 8 дюймов и эталон в 1 дюйм,

10 дюймов — эталон в 8 дюймов и эталон в 2 дюйма,

11 дюймов — эталон в 8 дюймов, эталон в 2 дюйма и эталон в 1 дюйм,

12 дюймов — эталон в 8 дюймов и эталон в 4 дюйма,

13 дюймов — эталон в 8 дюймов, эталон в 4 дюйма и эталон в 1 дюйм,

14 дюймов — эталон в 8 дюймов, эталон в 4 дюйма и эталон в 2 дюйма,

15 дюймов — эталон в 8 дюймов, эталон в 4 дюйма, эталон в 2 дюйма и эталон в 1 дюйм.

Это представление толщины с помощью наборов эталонов эквивалентно записи чисел от 1 до 15 в виде следующих совокупностей единиц и нулей: 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011, 1100, 1101, 1110 и 1111.

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

Рис.1
       
При этом нам ни разу не пришлось воспользоваться чем-либо выходящим за рамки таблицы умножения и простейших правил сложения или вспоминать, что наши числа 56 и 38 — это на самом деле 56 градусов или 38 дюймов.

Однако существуют такие цифровые вычислительные машины, в которых число 10 не играет никакой особенной роли и которые работают, исходя из двоичной системы счисления. Для того чтобы понять, как это делается, рассмотрим, например, умножение 7 x 5 = 35 и представим числа 7 и 5 в виде

7 = 4 + 2 + 1,

5 = 4 + 1.

Согласно приведенным равенствам в двоичной системе счисления число 7 изображается числом 111, число 5 — числом 101 (это и значит, что 7 равно сумме одной четверки, одной двойки и одной единицы, а 5 — сумме одной четверки, нуля двоек и одной единицы). При выполнении операции умножения этих двух чисел мы поступим теперь следующим образом:

Рис.2

Вспомнив далее, что в двоичной системе счисления 2 = 10, мы можем переписать число 11211 в виде 12011, или в виде 20011, или, наконец, в виде 100011. Лишь последняя форма является истинно двоичной, ибо только в ней не используются никакие другие цифры, кроме 0 и 1. Переходя теперь обратно к десятичной системе счисления, получим: 32 + 0(16) + 0(8) + 0(4) + 2 + 1 = 35. Этот метод получил название метода умножения в двоичной системе счисления. Я хочу подчеркнуть еще раз, что по существу он ничем не отличается от обычного метода умножения, использующего десятичную систему счисления.


Рецензии