Троичная система счисления

У меня на столе лежит книга «Справочник программиста. Том первый», выпущенная в 1963 году в Ленинграде Государственным союзным издательством судостроительной промышленности. В этой книге есть глава «Вычислительная машина «Сетунь». Из этой главы можно узнать, что машина «Сетунь» выполняет 5500 сложений или 3000 сложений в секунду, ввод данных осуществляется с бумажной перфоленты со скоростью 800 цифр в секунду, в качестве ОЗУ используются ферритовые сердечники, в качестве ПЗУ – магнитный барабан. 

Но не это главное. Самое интересное  –  это то, что в «Сетуни» для представления чисел используется не двоичная, а троичная система счисления! Вместо привычных битов используются триты!

Точнее, в «Сетуни» используется сокращенная троичная система счисления. Это значит, что тритами являются цифры -1, 0, 1. Цифра -1 кодируется символом 1. Операции сложения и умножения тритов задаются естественным образом: 

1 + 1 = 11,   1 * 1 = 1,   1 + 0 = 01,   1 * 0 = 0,   1 + 1 = 11,   1 * 1 = 1 и т.д.

Интересно, что произведение тритов укладывается в один трит, а сумма – нет.

Операции для отдельных тритов можно распространить на слова:

 

 1010011
+ 111111
       

11111010
   110110
  *  1011
         

   110110
  110110
 110110
         

111011010

Цитата: «Сравнение сокращенной троичной системы с двоичной показывает, что имеется ряд существенных отличий первой от второй. Так, например, в двоичной системе (в различных формах представления) знак числа фиксируется двоичным разрядом, в то время как в сокращенной троичной системе запись отрицательного числа не отличается от записи положительного и отсутствует необходимость в специальном знаковом разряде».

По информации Интернет разработкой машины «Сетунь» руководил Н.П. Брусенцов. Он предложил использовать троичную ферритодиодную ячейку. Этим возможно и объясняется выбор в «Сетуни» троичной системы счисления. Мне, однако, больше нравится другое объяснение, скорее всего неправильное.

Пусть b – основание системы счисления. Тогда для хранения целых чисел от 0 до N – 1 требуется log b N = ln N / ln b цифр (округление до ближайшего сверху целого опущено). Предположим, что стоимость хранения одной цифры прямо пропорциональна b. Для оптимизации стоимости хранения чисел следует выбирать основание b так, чтобы величина b / ln b принимала минимальное значение. Минимум достигается при b = e = 2.71828. Но b должно быть целым и следует выбрать между b = 2 и b = 3. Поскольку 2 / ln 2 > 3 / ln 3, троичная система счисления является наиболее экономичной!

Третий путь?

Новости
07.03.2024
План семинара весна 2024
12.02.2024
Единый день голосования
24.10.2023
II Международная научная конференция
26.05.2023
XХVIII научно-практическая конференция
28.04.2023
TIBO 2023
02.01.2023
Программный комплекс ЭАДП
27.12.2022
С Новым годом!
21.11.2022
Программный инструментарий
13.09.2022
XIII Международная научная конференция