Система счисления троичная: определение, свойства, примеры

Основой многих расчетов, как простых бытовых, так и сложнейших математических, является десятичная система счисления. Троичная же известна гораздо меньшему кругу людей, ведь применяется она весьма редко.

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

Всего три цифры

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

По основанию мы можем понять, как называется система счисления: троичная система имеет основание три, а десятичная - десять (работает и обратное правило - по названию сразу видно основание).

Алфавитом в системах счисления называется набор символов, которые в данном случае используются для записи чисел. Например, в десятичной системе используется десять цифр (считая ноль), а вот в двоичной их всего две, ноль и единица. В троичной же могут применяться 0, 1 и 2. К тому, почему основанием является тройка, а символов в алфавите - четыре, вернемся позже.

Разрядной цифрой называется наименьшее число, которое можно добавить в разряде, а разрядным слагаемым является цифра, записанная в каком-либо определенном разряде с добавлением нужного количества нолей. Максимально возможное значение разрядного слагаемого всегда зависит от системы счисления. Восьмеричная система счисления во втором разряде имеет разрядное слагаемое 70, в двоичной оно будет равно 10, в троичной - 20, а в десятичной - 90.

К примеру, если разложить десятичное число 158 на разрядные слагаемые, получится такой пример: 100+50+8 (третий разряд). А второразрядное число 98 предстанет в виде 90+8.

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

Алфавит

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

Троичные цифры можно закодировать тремя любыми знаками, например "А,Б,В", однако предварительно необходимо указывать их старшинство (к примеру, А меньше Б, Б меньше В).

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

Простая формула

Чтобы перевести число из десятичной в троичную систему счисления, нужно воспользоваться общей формулой. Необходимо делить десятичное число на основание необходимой системы и записывать остатки справа налево. Возьмем для примера число 30. Первым действием делим его на 3. Получаем 10 без остатка, поэтому записываем 0. Десять делится на 3 с остатком 1, поэтому записываем 1. В третьем действии 3 делим на основание системы и записываем сначала остаток, затем результат деления. В итоге получаем троичное число 1010.

Арифметические действия

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

Пожалуй, все помнят, по какому принципу составляется сетка в игре "Морской бой": в левом вертикальном столбце записываются цифры, а в верхнем горизонтальном - буквы. Сетку сложения можно составить по тому же принципу. Например, в несимметричной троичной системе всего три символа, таким образом столбцов будет четыре, в каждый из них следует вписать последовательную цепочку цифр. На примере: нижний горизонтальный столбец будет таков: 0, 00, 01, 02. Второй столбец: 1, 01, 02, 10. Третий: 2, 02, 10, 11. Можно расширить таблицу, если требуются числа из других разрядов (например, 001 и т. д.).

перевод в троичную систему счисления

Умножение

В троичной системе счисления таблица умножения выглядит короче и лаконичнее, нежели в десятичной, и само действие - не намного сложнее, ведь перемножать придется числа не больше двойки. Чтобы умножить в столбик, необходимо записать два троичных числа друг над другом, затем последовательно умножать первый множитель на разрядные числа второго, пропуская ноль. Таким образом, умножение цифры 102 на 101 будет выглядеть так: 2*1=2, 0*1=0, 1*1=1. Записываем 102. Далее пропускаем ноль и умножаем на единицу (старшее число второго множителя).

Однако сложение в троичной системе счисления можно произвести и без всякой таблицы. Для этого нужно вспомнить простое правило, гласящее: если результат сложения превышает разряд, следует разделить второе число пополам. Разберем пример: допустим, необходимо сложить 6 и 8. Результатом сложения превышает данную разрядность, поэтому делим 8 на 2, получаем 4. Окончательный пример выглядит так: 6+8=(6+4)+4=10+4=14.

Немного истории

Даже для бытовых расчетов не всегда использовалась десятичная система счисления. Троичная система частично использовалась еще у древних шумеров: их меры денег и весов были кратны трем. С древних времен и до наших дней на рычажных весах используется подобие троичной системы. Знаменитым Фибоначчи, итальянский ученым и математиком (настоящее имя - Леонардо Пизанский) была предложена целочисленная симметричная троичная система счисления. Таблица умножения в ней, как заметил французский математик О.Л. Коши, почти в четыре раза короче, по сравнению с десятичной.

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

Нечетная система счисления

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

Отрицательные числа

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

Взаимодействие с другими системами

Некоторые системы счисления стали знаменитыми благодаря использованию их в компьютерных технологиях. Например двоичная система, или бинарный код - эти слова часто используются в СМИ и кинематографе, так что знакомы они практически всем. А вот восьмеричная система счисления мало у кого на слуху, хотя используется в сфере IT-технологий из-за того, что легко переводится в двоичную и наоборот, но гораздо более емкая.

Для троичной системы таким емким аналогом является девятеричная.

из десятичной в троичную систему счисления

Замена двоичной логики

Основой всех электронно-вычислительных машин нашего времени является двоичная логика, хотя троичная считается более перспективной. Удивительно, но еще в пятидесятые годы прошлого века в компьютере "Сетунь", построенном в МГУ, уже использовался симметричный троичный код. С 2008 года же в калифорнийском университете повторили опыт более чем полувековой давности, построив компьютерную систему ТСА2, также основанную на троичной логике.

Ее преимущества перед бинарной в том, что используется меньше разрядов. Например, число 10 десятичной системы в двоичной системе предстает как 1010, а в троичной несимметричной - как 101, или как +0+ в симметричной. Емкость также играет роль в том случае, если должна быть выбрана определенная система счисления. Троичная логика экономична и может вместить больший диапазон чисел при том же количестве знаков.

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

сложение в троичной системе счисления

Квантовый компьютер и троичный код

Квантовая механика может показаться чем-то фантастическим. Ее законы продолжают удивлять всех, кто впервые с ней сталкивается, однако люди уже давно задумались об использовании ее для создания компьютера нового поколения, более мощного и очень быстрого. Однако это потребует и новых алгоритмов защиты. Например, чтобы получить доступ к кредитной карте, необходимо разложить на простые множители огромное число, имеющее сотни знаков. Самый быстрый современный компьютер сможет сделать это за время, равно возрасту нашей Вселенной, однако квантовый компьютер, основанный на троичной логике, вполне справится с этой задачей.

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

Комплексная работа

Да, использование троичного кода в среднем ускоряет работу компьютера на 50 %, но если "перевод" в троичную систему счисления всех устройств все же произойдет, то как же будут работать старые приложения и программы? Неужели придется менять все и сразу? Нет. Троичная логика как стоящая на разряд выше включает в себя все возможности двоичного кода, и, сверх этого, еще и целый ряд преимуществ. Однако программы должны быть оптимизированы под троичный код, иначе будут работать по-старому.