Троичное зеркально-симметричное умножение и деление

В основе зеркально-симметричного умножения лежит следующее тривиальное тождество для степеней золотой пропорции:

t2n ´ t2m = t2(n+m)(1)

Правило "зеркально-симметричного умножения" задается Табл.1.

Таблица 1.

`1 0 1
`1 1 0`1
 0 0 0 0
 1`1 0 1

Умножение выполняется в "прямом" коде. Общий алгоритм умножения двух зеркально-симметричных чисел сводится к формированию частичных произведений в соответствии с Табл.1 и их сложению в соответствии с правилом зеркально-симметричного сложения. В качестве примера умножим отрицательное число - 6 =`1 1 0 1, 0`1 на положительное число 2 = 1`1, 1:

Результат умножения в рассматриваемом примере формируется как сумма трех частичных произведений. Первое частичное произведение 1 0, 1 0`1 есть результат умножения зеркально-симметричного числа - 6 =`1 0 1, 0`1 на младшую положительную единицу зеркально-симметричного числа 2 = 1`1, 1, второе частичное произведение 1 0`1, 0 1 есть результат умножения того же самого числа - 6 =`1 0 1, 0`1 на среднюю отрицательную единицу числа 2 = 1`1, 1 и, наконец, третье частное произведение 1 0 1, 0`1 есть результат умножения того же самого числа 6 =`1 0 1, 0`1 на старшую положительную единицу числа 2 = 1`1, 1.

Заметим что произведение -12 =`1 1 0`1, 0 1`1 сохраняет свойство "зеркальной симметрии". Так как старшая цифра произведения является отрицательной единицей, отсюда вытекает, что произведение является отрицательным числом.

Зеркально-симметричное деление выполняется в соответствии с правилом деления в классической троичной симметричной системы счисления. Общий алгоритм зеркально- симметричного деления сводится к последовательному вычитанию из делимого сдвинутого делителя, который умножается на очередную троичную цифру остатка. Заметим, что при делении целых чисел N1 : N2 результат деления выражается через два целых числа, частное Q и остаток R от деления. Но числа Q и R являются всегда целыми, и это означает, что результаты деления Q и R контролируются согласно свойству "зеркальной симметрии".

Таким образом, мы обнаружили весьма интересную систему счисления, позволяющую представлять числа и выполнять все арифметические действия в "прямом" коде. Но наиболее важно, что все арифметические преобразования, выполняемые над числами, контролируются согласно свойству "зеркальной симметрии". На следующих страницах нашего Музея мы расскажем о технической реализации конвейерного зеркально-симметричного сумматора. Следуйте за нами!