Французский механик Жан Бодо в 1876 году впервые построил телеграфный аппарат, использующий такой пятизначный код, который получил название кода Бодо. Этот код к настоящему времени стал общепринятым международным телеграфным кодом.
В течение многих лет шло усовершенствование перфораторов и автоматов для кодирования, передачи, приема и декодирования электрических сигналов применительно к задачам главным образом телеграфии. Но вот приблизительно с четверть века назад началось бурное развитие вычислительной техники. Понадобились автоматы, не только передающие и принимающие сигналы, как это делают телеграфные аппараты, но умеющие производить с ними различные логические и арифметические действия.
Появились сначала единицы, затем десятки и сотни, теперь тысячи электронных вычислительных машин-автоматов. Для них сырьем и готовой продукцией являются числа. Только числа! Миллионы чисел!
Одновременно продолжали развиваться телеграфия и телефония. Вот когда вопросы о кодировании информации, о скорости ее передачи и обработки, о различных системах счисления приобрели первостепенною важность не только с точки зрения маленькой кучки математиков, занимавшихся, как казалось сторонним наблюдателям, совсем «никчемушным» делом, но и с точки зрения целой армии инженеров и ученых, придумывающих различные системы связи и вычислительные машины. Быстрыми шагами началось развитие теории информации, которая должна отвечать на эти вопросы и сотни других.
Какая система счисления наиболее удобна, когда речь идет об автоматической передаче информации, об автоматизации действий над числами, о числовом управлении автоматами?
Техники и математики нашли ответы на эти вопросы. Но чтобы не просто поверить, а понять смысл их ответов, надо разобраться, какими способами можно записать любое число.
Тем, кто не знаком с современной вычислительной техникой, такое занятие может показаться странным. Действительно, ведь хорошо известно, что любое число может быть записано с помощью десяти различных цифр — 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Этими цифрами и составленными из них числами мы пользуемся в повседневной жизни. С них начинаются первые уроки в школе, с ними мы сталкиваемся дома, на работе, на улице. Нам известны правила, по которым их можно складывать и вычитать, умножать, делить. Мы легко оперируем всеми 10 символами, которыми обозначены 10 цифр, и наша десятичная система счисления кажется нам очень простой и удобной.
Однако существуют и другие способы представления чисел, другие системы счисления. Так, например, любое целое число можно записать с помощью одного-единственного знака — 1 (единицы). Для этого символ единицы надо повторить столько раз, сколько в этом числе содержится единиц. Сложение при этом сводится к простому приписыванию единиц, а вычитание — к их вычеркиванию.
Идея, лежащая в основе такой системы «зарубок», крайне проста. Однако для записи больших чисел она слишком громоздка. Поэтому пользовались этой системой только народы, счет которых простирался не дальше одного-двух десятков.
Но вот появились автоматы, и конструкторы этих автоматов вспомнили, что число можно записать набором совершенно одинаковых сигналов. Их очень легко воспроизвести, и их легко «поймет» автомат. Такой способ записи программы работы в виде цепочки одинаковых символов назвали унитарным кодом, и теперь его широко применяют в автоматах.
Можно представить себе систему счисления, прямо противоположную системе зарубок, а именно такую, в которой каждому числу соответствует новый символ. При этом числа 10, 11, 12 и другие должны изображаться различными неповторяющимися значками. В такой системе для представления любого числа потребовался бы всего один значок, один символ, зато общее число этих символов было бы бесконечно велико.
Итак, пользуясь системой зарубок, надо помнить и понимать лишь один символ (это удобно и человеку и автомату!), но для записи большого числа требуется много места (всегда неудобно человеку и часто неудобно автомату!).
Пользуясь системой значков, можно любое число записать одним символом (превосходно с точки зрения человека и автомата), но при этом требуется помнить и понимать бесчисленное множество различных символов (абсолютно неприемлемо со всех точек зрения).
Между системами зарубок и символов, как между двумя противоположными полюсами, заключены все возможные системы счисления, включая нашу десятичную. Отличаются они одна от другой количеством основных значков, с помощью которых можно построить любое число.