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

Материал из Википедии — свободной энциклопедии

Перейти к: навигация, поиск

Трои́чная систе́ма счисле́нияпозиционная целочисленная система счисления с основанием 3. Существует в двух вариантах: несимметричная (цифры 0, 1, 2) и симметричная (цифры −1, 0, 1).

В цифровой электронике, независимо от варианта троичной системы счисления, одному троичному разряду (тр) в троичной системе счисления соответствует один троичный триггер как минимум на трёх инверторах с логикой на входе.

Содержание

[править] Представление чисел в троичных системах счисления

[править] Несимметричная троичная система счисления

Примером представления чисел в троичной системе счисления может служить запись в этой системе целых положительных чисел:

Десятичное число 0 1 2 3 4 5 6 7 8 9 10
Троичное число 0 1 2 10 11 12 20 21 22 100 101

Если в десятичной системе счисления имеется 10 цифр и веса соседних разрядов различаются в 10 раз (разряд единиц, разряд десятков, разряд сотен), то в троичной системе используются только три цифры и веса соседних разрядов различаются в три раза (разряд единиц, разряд троек, разряд девяток, …). Цифра 1, написанная первой левее запятой, обозначает единицу; эта же цифра, написанная второй левее запятой, обозначает тройку и т.д.

[править] Симметричная троичная система счисления

Позиционная целочисленная симметричная троичная система счисления была предложена итальянским математиком Фибоначчи (Леонардо Пизанский) (1170 - (1228-1260)) для решения "задачи о гирях". [1]

Симметричная троичная система использовалась в советской ЭВМ Сетунь.

Симметричная троичная система наиболее экономна с точки зрения представления чисел.

Симметричная система позволяет изображать отрицательные числа, не используя отдельный знак минуса. Число 2 изображается цифрой 1 в разряде троек и цифрой \bar 1 (минус единица) в разряде единиц.

Десятичная система −3 −2 −1 0 1 2 3 4 5 6 7 8 9
Троичная несимметричная −10 −2 −1 0 1 2 10 11 12 20 21 22 100
Троичная симметричная 10 11 1 0 1 11 10 11 111 110 111 101 100

[править] Свойства симметричной троичной системы

Благодаря тому что основание 3 нечётно, в троичной системе возможно симметричное относительно нуля расположение цифр: -1, 0, 1, с которым связано два ценных свойства:

[править] Представление отрицательных чисел

Наличие положительной и отрицательной цифр позволяет непосредственно представлять как положительные, так и отрицательные числа. При этом нет необходимости в специальном разряде знака и не надо вводить дополнительный (или обратный) код для выполнения арифметических операций с относительными числами. Все действия над числами, представленными в троичной системе счисления с цифрами 0, 1, -1, выполняются естественно с учётом знаков чисел. Знак числа определяется знаком старшей значащей цифры числа: если она положительна, то и число положительно, если отрицательно, то и число отрицательно. Для изменения знака числа надо изменить знаки всех его цифр (т.е. инвертировать его код). Например:

10\bar1 =  8
\bar101 = -8

[править] Округление

Другим полезным следствием симметричного расположения значений цифр является отсутствие проблемы округления чисел: абсолютная величина части числа, представленной отбрасываемыми младшими цифрами, никогда не превосходит половины абсолютной величины части числа, соответствующей младшей значащей цифре младшего из сохраняемых разрядов. Следовательно, в результате отбрасывания младших цифр числа получается наилучшее при данном количестве оставшихся цифр приближение этого числа, и округление не требуется.

[править] Перевод в другие системы счисления

Всякое число, записанное в троичной системе счисления с цифрами 0, 1, -1, можно представить в виде суммы целых степеней числа 3, причём если в данном разряде троичного изображения числа стоит цифра 1, то соответствующая этому разряду степень числа 3 входит в сумму со знаком «+», если же цифра -1, то со знаком «-», а если цифра 0, то вовсе не входит. Это можно представить формулой

 \cdots + K_3\cdot3^3 + K_2\cdot3^2+ K_1\cdot3^1+ K_0\cdot3^0+ K_{-1}\cdot3^{-1}+ K_{-2}\cdot3^{-2}+ K_{-3}\cdot3^{-3} + \cdots, где


 \cdots + K_3\cdot3^3 + K_2\cdot3^2+ K_1\cdot3^1+ K_0\cdot3^0 — целая часть числа,
 \cdots + K_{-1}\cdot3^{-1}+ K_{-2}\cdot3^{-2}+ K_{-3}\cdot3^{-3} + \cdots — дробная часть числа,

причём коэффициенты K могут принимать значения { 1, 0, -1 }.

Для того чтобы число, представленное в троичной системе, перевести в десятичную систему, надо цифру каждого разряда данного числа умножить на соответствующую этому разряду степень числа 3 (в десятичном представлении) и полученные произведения сложить.

[править] Девятеричная форма представления команд

Представление команд троичным кодом при программировании и при вводе в машину неудобно и неэкономно, поэтому вне машины применяется девятеричная форма представления команд. Девятеричные цифры \bar4, \bar3, \bar2, \bar1, 0, 1, 2, 3, 4 сопоставляются парам троичных цифр:

\bar1\bar1 = \bar4;\quad\bar10 = \bar3;\quad\bar11 = \bar2;\quad0\bar1 = \bar1;\quad00 = 0;
11 = 4;\quad10 = 3;\quad1\bar1 = 2;\quad01 = 1.

При выводе из машины отрицательные девятеричные цифры обозначают буквами:

Девятеричная цифра \bar1 \bar2 \bar3 \bar4
Буква латинского алфавита Z Y X W
Буква русского алфавита Ц У Х Ж


[править] Исключающее ИЛИ

Вычисляется min(max(x, y), −min(x, y)):

 ⊕ | -1  0 +1
---+----------
-1 | -1  0 +1
 0 |  0  0  0
+1 | +1  0 -1

[править] См. также

[править] Литература

Брусенцов Н.П., С.П. Маслов, В.П. Розин, А.М. Тишулина "Малая цифровая вычислительная машина Сетунь" Издательство Московского университета 1965

[править] Ссылки

  1. "Троичный принцип" Николая Брусенцова.

выпуск 40, М., "Наука", 1987 г., 48 стр..