Вычислительные машины — это, коротко говоря, машины для записи чисел, производства действий над ними и выдачи результата в числовой форме. На простую задачу ясной и точной записи чисел приходится значительная доля стоимости вычислительной машины как в денежном выражении, так и с точки зрения затрат конструкторского труда. Простейшим решением будет, по-видимому, равномерная шкала с каким-либо указателем, движущимся вдоль нее. Если мы хотим записать число с точностью до 1/n, мы должны обеспечить возможность установки указателя с этой точностью в любой части шкалы. Другими словами, при количестве информации, равном log2n, каждое отдельное перемещение указателя должно заканчиваться с этой степенью точности, и стоимость записи будет выражаться как An, где A близко к константе. Вернее, поскольку после точного выделения n—1 частей точно определится и оставшаяся часть, стоимость записи количества информации I будет приблизительно равна
(5.01)
Разделим теперь эту информацию между двумя шкалами, градуированными каждая менее точно. Стоимость записи такой информации будет приблизительно равна
(5.02)
Если информация разделена между N шкалами, то стоимость будет близка к
(5.03)
Минимум достигается при
, (5.04)
[c.187]
а если положить
, (5.05)
то при
(5.06)
Последнее равенство выполняется тогда и только тогда, когда x=0, т. е. N=. Следовательно, чтобы стоимость хранения информации была наименьшей, N должно быть как можно больше.
Вспомним, однако, что 2I/N обязано быть целым числом и что оно не может равняться единице; ведь в случае 2I/N=1 мы имели бы бесконечно много шкал, каждая из которых не содержала бы информации. Наименьшее допустимое значение для 2I/N равно 2; в этом случае число записывается на нескольких независимых шкалах, разделенных каждая на две равные части. Другими словами, мы представляем числа в двоичной системе на ряде шкал, где требуется лишь знать, что некоторая величина находится на одной из двух равных частей шкалы, и где вероятность неточного наблюдения шкалы сделана ничтожно малой. Другими словами, мы представляем v в виде
(5.07)
где каждое vn равно единице или нулю.
В настоящее время существует два основных типа вычислительных машин: 1) машины, подобные дифференциальному анализатору Буша[154], которые принято называть аналоговыми машинами; 2) машины, подобные обычному арифмометру, которые мы называем цифровыми машинами. В первых — данные изображаются посредством измерений на какой-либо непрерывной шкале, вследствие чего точность машины определяется точностью градуировки шкалы; во вторых — данные изображаются серией выборов из нескольких возможностей, а точность определяется четкостью различения [c.188] отдельных возможностей, числом альтернатив при каждом выборе и числом сделанных выборов. Понятно, что, во всяком случае для точных вычислений, цифровые машины лучше, а из них лучше всего машины с двоичной шкалой, в которых при каждом выборе возникает лишь две альтернативы. Наше предпочтение машинам с десятичной шкалой обусловлено просто той исторической случайностью, что десятичная шкала, основанная на числе пальцев, уже была в употреблении, когда индусы сделали свое великое открытие роли нуля и преимуществ позиционной нотации. Сохранение десятичной системы оправдано лишь тогда, когда значительная часть выполняемой с помощью машины работы состоит в передаче ей чисел, записанных в традиционной десятичной форме, и в получении от нее чисел, которые должны записываться в той же традиционной форме.
Так в действительности и используется обычный арифмометр в банках, деловых конторах и различных статистических бюро. Но это не наилучший способ эксплуатации более крупных и более автоматических машин; ведь всякая вычислительная машина применяется именно потому, что машинные методы быстрее ручных. При любом комбинированном использовании вычислительных средств, как и при любой комбинации химических реакций, порядок постоянной времени всей системы определяется самым медленным звеном. Поэтому желательно по возможности исключить непосредственное участие людей из всякой сложной цепочки вычислений, оставив его только там, где оно совершенно неизбежно — в самом начале и в самом конце. При таком подходе выгодно иметь устройство для изменения системы счисления и применять его в начале и в конце цепочки, а все промежуточные операции производить по двоичной шкале.