В 1840 году французский
математиком и изобретателем механических вычислений Леоном
Лаланном была предложена уравновешенная троичная система.
Основанием этой системы служит число 3, но вместо цифр 0, 1 и 2
используются 0, 1 и -1 (обычно место "минус единицы"
используется символ ). По аналогии с битами двоичной системы
счисления такие обозначения называются тритами.
Сразу же можно
заметить, что знак числа определяется первым ненулевым символом
в его троичной записи. Если это 1, то число положительное, а
если 1 , то
отрицательное. Очень просто, поразрядно, выполняются в
уравновешенной троичной системе сложение и вычитания:
+
1
1
0
1
1
1
0
11
1
11
0
Сложим в уравновешенной троичной системе числа 247 и 122:
Легко проверить, что
1-1-1-1-1003=369.
Столь же просто производиться вычитание: для этого достаточно
изменить знак вычитаемого на противоположный и сложить число с
уменьшаемым.
Умножение также сводится к простым операциям изменения знака и
сложения.
*
1
1
1
1
1
1
1
1
Таблица умножения в уравновешенной троичной системе:
Интересно, что представление чисел в
уравновешенной троичной системе неявно присутствует ещё в
знаменитой "задаче Баше о весах" - которую, впрочем, Леонардо
Пизанский (Фибоначчи) сформулировал за 400 лет до Баше, в XIII
в. В задаче требуется на найти набор из четырёх гирь, с помощью
которого можно взвесить любой груз весом от 1 до 40 кг (или
набор из трех для взвешивания любого груза весом от 1 до 13 кг -
задача известна в разных вариантах).
Для решения задачи надо просто найти представление в
уравновешенной троичной системе целого числа, равного весу
груза. Пусть, например, надо взвесить груз в 33кг. Представим
число 33 в уравновешенной троичной системе: 33= 27+9-3+0=1110
.
Значит, гири 27 кг и 9 кг надо положить на одну чашу весов, а
взвешиваемый груз и гирю 3 кг - на другую. Если к этим трём
гирям добавить ещё одну весом 1 кг, то мы сможем взвесить любой
груз, не превышающий 40 кг.
Более 100 лет после Лаланна
уравновешенная троичная система не привлекала большого внимания
учёных. Но когда на смену ранним механическим и
электромеханическим вычислительным устройствам, основанным на
десятичной системе счисления, стали приходить электронные
компьютеры, она всерьёз
рассматривалась как возможная альтернатива двоичной.
Знаменитый американский специалист в области методов вычислений
Дональд Кнут писал в 1969 году, что время троичной арифметики в
компьютере наступит, если удастся найти замену триггеру (
логическая схема, имеющая два состояния и позволяющая хранить
один бит информации). Однако задолго до выхода книги Кнута
троичная система счисления уже была успешно применена в весьма
интересной и оригинальной отечественной разработке. Речь идёт об
ЭВМ "Сетунь", созданной в Вычислительном центре МГУ в 1959 году
под руководством академика С. Л. Соболева и Н. П. Брусенцова.
Начиная с 1962 года машина выпускалась серийно, и за 3 года было
изготовлено около 50 экземпляр. Устройство на базе троичной
арифметики оказались не только более простыми и быстрыми, но и
весьма надёжными. Они также потребляли меньшую мощность, чем
двоичные устройства, реализованные на тех же элементах.
...В чём особенность "Сетуни" ? Более простой машины, по -
видимому, не было вообще. "Сетунь" имела всего лишь 24 команды.
И это была машина с фиксированной и плавающей запятой. Возьмите
современную RISC - архитектуру (Reduced Instruction Set Computer
- компьютер с сокращённым набором команд). Почему же она Reduced,
если используются сотни команд? Зачем столько?
Достоинством "Сетуни" являлось то, что все описание вмещалось в
маленькой книжечки, причём доступные "простым смертным". Даже
гуманитарии пользовались Сетунью самостоятельно.
В XII веки Раймонд
Лулий создал логическую машину в виде бумажных кругов.
Поразительно, но никто не замечает, что она троичная....
...В 1840 году
англичанин Томас Фаулер создал вычислительную троичную машину на
деревянных стержнях. Он так и не получил поддержки. Кстати,
отсюда следует, что "Сетунь" не единственная троичная машина,
как о ней часто говорят.
Арифметические операции
над числами, записанными в этой системе, выполняются очень
просто. Обладает она и другими достоинствами: запись числа
в ней короче, чем при использовании двоичной системы; нет
необходимости вводить специальный знаковый разряд.