Трои́чная систе́ма счисле́ния — позиционная система счисления с целочисленным основанием равным 3. Существует в двух вариантах: несимметричная и симметричная.
Троичные цифры можно обозначать любыми тремя знаками {A,B,C}, {X,Y,Z}, {!,?,%} и др., но в несимметричной троичной системе счисления чаще применяются цифры {0,1,2}, а в троичной симметричной системе счисления знак,0,1}, {1,0,1}[1], {i,0,1}, {N,O,P}, {N,Z,P} и цифры {2,0,1}.
В цифровой электронике, независимо от варианта троичной системы счисления, одному троичному разряду (тр.р.) в троичной системе счисления соответствует один троичный триггер как минимум на трёх инверторах с логикой на входе или два двоичных триггера как минимум на четырёх инверторах.
Троичные коды являются комбинациями трёх элементов и не являются троичной системой счисления, но используется в них, как основа, причём, двоичный код может использоваться для кодирования чисел в системах счисления с любым основанием.
При кодировании алфавитно-цифровых символов (знаков) троичному коду не приписываются весовые коэффициенты, как это делается в системах счисления, в которых троичный код используется для представления чисел, а используется только порядковый номер кода из множества размещений с повторениями.
числовое
значение |
троичный
код |
---|---|
0 | 00 |
1 | 01 |
2 | 02 |
3 | 10 |
4 | 11 |
5 | 12 |
6 | 20 |
7 | 21 |
8 | 22 |
Представление чисел в троичных системах счисления[]
Несимметричная троичная система счисления[]
Примером представления чисел в несимметричной троичной системе счисления может служить запись в этой системе целых положительных чисел:
Десятичное число 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, написанная первой левее запятой, обозначает единицу; эта же цифра, написанная второй левее запятой, обозначает тройку и т.д.
Несимметричная троичная система счисления является частным случаем спаренных (комбинированных) показательных позиционных систем счисления, в которой ak - из троичного множества a={0,1,2}, b=3, веса разрядов равны 3k.
Сдвоенные комбинированные системы счисления[]
В сдвоенных (спаренных, комбинированных) показательных позиционных троичных системах счисления используются две системы счисления:
- внутриразрядная система счисления с основанием a, числа которой используются для записи цифр и
- приписная межразрядная система счисления с основанием b.
Целое число в сдвоенной показательной позиционной системе счисления представляется в виде суммы произведений значений в разрядах (цифр) - на k-тые степени числа b:
- , где:
- k - число от 0 до n-1, номер числового разряда,
- n - число разрядов,
- a - число, основание основной внутриразрядной системы счисления,
- ak — целые числа из множества a, называемые цифрами,
- b - число, основание межразрядной показательной весовой функции,
- bk - числа межразрядной функции, весовые коэффициенты разрядов.
Каждое произведение в такой записи называется (a,b)-ичным разрядом.
При b=a образуются (a,a)-ичные системы счисления с произведением - akak и суммой - , которые при a=3 превращаются в обычную (3,3)-ичную (троичную) систему счисления. При записи первый индекс часто опускается, иногда, когда есть упоминание в тексте, опускается и второй индекс.
Весовой коэффициент разряда - bk - приписной и, в общем случае, может быть необязательно показательной функцией от номера разряда - k, и необязательно степенью числа 3. Множество значений ak более ограниченно и более связано с аппаратной частью - числом устойчивых состояний триггеров или числом состояний группы триггеров в одном разряде регистра. В общем случае, ak могут быть тоже необязательно из троичного множества a={0,1,2}, но, чтобы спаренной системе быть троичной и называться троичной, как минимум, одна из двух систем должна быть троичной. Так как ak-тые ближе к аппаратной части и по ak-тым из множества a={0,1,2} или из множества a={-1,0,+1}, а не по bk мы определяем и относим число x(a,b) к троичным системам кодирования, то есть бо́льшие основания считать a основным основанием системы счисления, b в таком случае называется основанием вспомогательной системы счисления. Но и это весьма относительно, так как запись числа может быть в одной системе кодирования, а само число может быть в другой системе счисления. Пример: двоично-десятичное кодирование (BCD), в котором числа записываются в двоичном коде, а система счисления - десятичная.
Сдвоенные комбинированные троичные системы счисления[]
Целое число в сдвоенной (спаренной) позиционной троичной системе записывают в виде последовательности его цифр (строки цифр), перечисляемых слева направо по убыванию старшинства разрядов:
В показательных системах счисления значениям разрядов приписываются весовые коэффициенты , в записи они опускаются, но подразумевается, что k-тый разряд справа налево имеет весовой коэффициент равный .
Из комбинаторики известно, что число записываемых кодов не зависит от основания показательной функции - b, которое определяет диапазон представляемых числами x3,b величин, и равно числу размещений с повторениями:
, где:
a=3 - 3-х элементное множество a={0,1,2} из которого берутся цифры ak, n - число элементов (цифр) в числе x3,b.
Дробное число записывается и представляется в виде:
- , где m - число разрядов дробной части сдвоенного (спаренного) позиционного числа справа от запятой,
при m=0 дробная часть отсутствует, число - целое,
при ak из троичного множества a={0,1,2} и b=1 образуется непозиционная троичная система счисления с одинаковыми весовыми коэффициентами всех разрядов равными 1k=1,
при ak из двоичного множества a={0,1} и b=3 в сумме будут только целые степени - 3k,
при ak из троичного множества a={0,1,2} и b=3 в сумме будут целые и удвоенные степени 3, система счисления становится обычной несимметричной троичной системой счисления, ak удовлетворяют неравенству 0<=ak<=(b-1)<b, т.е. 0<=ak<=2<3,
при ak из десятичного множества a={0,1,2,3,4,5,6,7,8,9} и b=3 в сумме будут целые степени 3 умноженные на 1, 2, 3, 4, 5, 6, 7, 8 и 9.
В некоторых случаях этого может оказаться недостаточно, в таких случаях можно применить стро́енные (комтринированные), счетверённые и другие системы счисления.
Строенные комбинированные троичные системы счисления[]
В стро́енных (комтринированных) показательных позиционных троичных системах счисления используются три системы счисления. В вес разряда вводится дополнительный член в третьей системе счисления. Например, сомножитель (b/с):
В общем случае c≠3.
При ak из a={0,1,2}, b=3 и c=3 образуется обычная несимметричная троичная система счисления.
При a=2, b=3 и c=2 образуется (2,3,2)-ичная система счисления с дополнительным нецелочисленным весовым коэффициентом в произведении равным (3/c)=(3/2)=1,5.
При других значениях a, b и c образуются другие строенные показательные позиционные системы счисления с дополнительным сомножителем (b/c), число которых бесконечно.
Возможны бесконечные множества и других составных систем систем счисления.
Кодирование троичных цифр[]
Одна троичная цифра может кодироваться разными способами.
1. Трёхуровневое однопроводное кодирование:
2 - (+1) ;
1 - (0) ;
0 - (-1) .
2. Двухуровневое двухразрядное двухпроводное кодирование 1 (2-Bit Binary Coded Ternary, 2B BCT representation)[2]:
2 - (1,0);
1 - (0,1);
0 - (0,0).
3. Двухуровневое двухразрядное двухпроводное кодирование 2:
2 - (1,1);
1 - (0,1);
0 - (0,0).
3. Трёхразрядное одноединичное трёхпроводное кодирование 1 (3-Bit Binary Coded Ternary, 3B BCT representation):
2 - (1,0,0);
1 - (0,1,0);
0 - (0,0,1).
4. Трёхразрядное однонулевое трёхпроводное кодирование 2:
2 - (0,1,1);
1 - (1,0,1);
0 - (1,1,0).
5. Трёхразрядное единичное (унарное) трёхпроводное кодирование 3:
2 - (1,1,1);
1 - (0,1,1);
0 - (0,0,1).
6. Двухуровневое нулевое трёхпроводное кодирование 4:
2 - (0,0,0);
1 - (1,0,0);
0 - (1,1,0).
и др.
Сравнение с двоичной системой счисления[]
При поразрядном сравнении троичная система счисления оказывается более ёмкой, чем двоичная система счисления.
При девяти разрядах двоичный код имеет ёмкость чисел, а троичный код имеет ёмкость числа, т.е. в раза больше.
При двадцати семи разрядах двоичный код имеет ёмкость чисел, а троичный код имеет ёмкость чисел, т.е. в раз больше.
При восьмидесяти одном разряде двоичный код имеет ёмкость числа, а троичный код имеет ёмкость чисел, т.е. в раз больше.
Свойства[]
Троичная позиционная показательная несимметричная троичная система счисления по затратам числа знаков (в трёхразрядном десятичном числе 3*10=30 знаков) наиболее экономична из позиционных показательных несимметричных систем счисления.[3][4][5][6] А. Кушнеров[4] приписывает эту теорему Джону фон Нейману.
Перевод целых чисел из десятичной системы счисления в троичную[]
Для перевода целое десятичное число делят нацело с остатком (целочисленное деление) на 3 до тех пор, пока частное больше нуля. Остатки, записанные слева направо от последнего к первому являются целым несимметричным троичным эквивалентом целого десятичного числа.[7]
Пример: десятичное целое число 4810,10 переведём в несимметричное троичное целое число:
число = 4810,10 делим на 3, частное = 16, остаток a0 = 0
частное = 1610,10 делим на 3, частное = 5, остаток a1 = 1
частное = 510,10 делим на 3, частное = 2, остаток a2 = 2
частное = 210,10 делим на 3, частное = 0, остаток a3 = 1
Частное не больше нуля, деление закончено.
Теперь, записав все остатки от последнего к первому слева напрво, получим результат 4810,10 = (a3a2a1a0)3,3 = 12103,3.
Симметричная троичная система счисления[]
Позиционная целочисленная симметричная троичная система счисления была предложена итальянским математиком Фибоначчи (Леонардо Пизанский) (1170 — 1250) для решения «задачи о гирях».[8] Частный случай этой задачи был опубликован в книге Баше де Мезириака в XVII веке, позже этой задачей интересовался Д. И. Менделеев.[9]
Симметричность при взвешивании на рычажных весах использовали с древнейших времён, добавляя гирю на чашу с товаром. Элементы троичной системы счисления были в системе счисления древних шумеров,[10] в системах мер, весов и денег, в которых были единицы равные 3. Но только в симметричной троичной системе счисления Фибоначчи объединены оба этих свойства.
Симметричная троичная система использовалась в советской ЭВМ Сетунь. По затратам числа знаков на представление чисел она равна троичной несимметричной системе.
Симметричная система позволяет изображать отрицательные числа, не используя отдельный знак минуса. Число 2 изображается цифрой 1 в разряде троек и цифрой (минус единица) в разряде единиц. Число −2 изображается цифрой (минус единица) в разряде троек и цифрой 1 в разряде единиц.
Возможно шесть соответствий троичной симметричной системы счисления и троичной несимметричной системы счисления:
1. | 2. | 3. | 4. | 5. | 6. | |
---|---|---|---|---|---|---|
1 | 2 | 1 | 0 | 0 | 2 | 1 |
0 | 1 | 0 | 2 | 1 | 0 | 2 |
Шаблон:Overline | 0 | 2 | 1 | 2 | 1 | 0 |
В соответствии 2. сохраняются числовые значения 0 и 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 |
В троичной симметричной системе счисления знак Шаблон:Overline можно заменить знаком (не числом) i или 2 и, во втором случае, использовать для троичной симметричной системы счисления {-1,0,+1} знаки троичной несимметричной системы {2,0,1}.
Свойства[]
Благодаря тому что основание 3 нечётно, в троичной системе возможно симметричное относительно нуля расположение цифр: -1, 0, 1, с которым связано четыре ценных свойства:
- Естественность представления отрицательных чисел;
- Отсутствие проблемы округления.
- Таблица умножения в этой системе, как отметил О. Л. Коши, примерно в четыре раза короче.[9](стр.34).
- Для изменения знака у представляемого числа нужно изменять знаки у всех его цифр. Это свойство увеличивает число операций при перемене знака (в несимметричных системах изменяется только один знаковый разряд), но повышает надёжность при сбоях в одном или более разрядах.
Представление отрицательных чисел[]
Наличие положительной и отрицательной цифр позволяет непосредственно представлять как положительные, так и отрицательные числа. При этом нет необходимости в специальном разряде знака и не надо вводить дополнительный (или обратный) код для выполнения арифметических операций с отрицательными числами. Все действия над числами, представленными в троичной системе счисления с цифрами 0, 1, -1, выполняются естественно с учётом знаков чисел. Знак числа определяется знаком старшей значащей цифры числа: если она положительна, то и число положительно, если отрицательна, то и число отрицательно. Для изменения знака числа надо изменить знаки всех его цифр (т.е. инвертировать его код инверсией Лукасевича). Например:
Округление[]
Другим полезным следствием симметричного расположения значений цифр является отсутствие проблемы округления чисел: абсолютная величина части числа, представленной отбрасываемыми младшими цифрами, никогда не превосходит половины абсолютной величины части числа, соответствующей младшей значащей цифре младшего из сохраняемых разрядов. Следовательно, в результате отбрасывания младших цифр числа получается наилучшее при данном количестве оставшихся цифр приближение этого числа, и округление не требуется.
Перевод в другие системы счисления[]
Всякое число, записанное в троичной системе счисления с цифрами 0, 1, -1, можно представить в виде суммы целых степеней числа 3, причём если в данном разряде троичного изображения числа стоит цифра 1, то соответствующая этому разряду степень числа 3 входит в сумму со знаком «+», если же цифра -1, то со знаком «-», а если цифра 0, то вовсе не входит. Это можно представить формулой
- , где
- — целая часть числа,
- — дробная часть числа,
причём коэффициенты K могут принимать значения { 1, 0, -1 }.
Для того чтобы число, представленное в троичной системе, перевести в десятичную систему, надо цифру каждого разряда данного числа умножить на соответствующую этому разряду степень числа 3 (в десятичном представлении) и полученные произведения сложить.
Девятиричная форма представления команд[]
Представление команд троичным кодом при программировании и при вводе в машину неудобно и неэкономно, поэтому вне машины применяется девятиричная форма представления команд. Девятиричные цифры сопоставляются парам троичных цифр:
При выводе из машины отрицательные девятиричные цифры обозначают буквами:
Девятиричная цифра Буква латинского алфавита Z Y X W Буква русского алфавита Ц У Х Ж
См. также[]
- Системы счисления
- Позиционные системы счисления
- Троичный код
- Троичная логика
- Сетунь (компьютер)
- Троичный триггер
- Троичный компьютер
- Троичный разряд
- Трайт
- Единицы количества информации
- Комбинированные системы счисления
- Троичное кодирование
- Двоичный код
Литература[]
Брусенцов Н.П., С.П. Маслов, В.П. Розин, А.М. Тишулина "Малая цифровая вычислительная машина Сетунь" Издательство Московского университета 1965
Ссылки[]
- ↑ de:Ternärsystem#Vergleich mit dem Dezimalsystem und dem Binärsystem
- ↑ http://314159.ru/kushnerov/kushnerov1.pdf Троичная цифровая техника. Ретроспектива и современность
- ↑ С. В. Фомин Системы счисления. — М.: Наука, 1987. — 48 с. — (Популярные лекции по математике). (альтернативная ссылка)
- ↑ 4,0 4,1 А. Кушнеров Троичная цифровая техника. Ретроспектива и современность.
- ↑ Экономичность систем счисления
- ↑ О. А. Акулов, Н. В. Медведев. Информатика и вычислительная техника. 4-е изд. — М.: Омега-Л, 2007. (Раздел I, Гл.3.3)
- ↑ http://algolist.manual.ru/maths/teornum/count_sys.php Перевод из системы с большим основанием - в систему с меньшим
- ↑ «Троичный принцип» Николая Брусенцова.
- ↑ 9,0 9,1 С. Б. Гашков § 11. Д. И. Менделеев и троичная система // Системы счисления и их применение. — М.: МЦНМО, 2004. — (Библиотека «Математическое просвещение»). В Google Chrome после нажатия на PDF(333Kb) нужно стронуть одну из боковых сторон рамки браузера.
- ↑ Юрий Ревич «Наследники Бэббиджа».
- Системы счисления, основанные на числах Фибоначчи и Золотой Пропорции
- С. В. Фомин Системы счисления. — М.: Наука, 1987. — 48 с. — (Популярные лекции по математике).
После нажатия на PDF(333Kb) нужно стронуть боковую часть рамки окна браузера.
- http://school6.tgl.ru/uchebnik/sistem_s/03.htm Системы счисления. Л.Н.Олейник. Арифметические действия в позиционных системах счисления. Троичная система счисления.
- http://ru.wikipedia.org/wiki/%D0%A2%D1%80%D0%BE%D0%B8%D1%87%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%81%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F Википедия. Троичная система счисления
Эта страница использует содержимое раздела Википедии на русском языке. Оригинальная статья находится по адресу: Троичная система счисления. Список первоначальных авторов статьи можно посмотреть в истории правок. Эта статья так же, как и статья, размещённая в Википедии, доступна на условиях CC-BY-SA .