stringtranslate.com

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

Троичная / ˈ t ɜːr n ər i / система счисления ( также называемая троичной [1] ) имеет в качестве основания три . Аналогично биту троичная цифра — это трит ( tri nary dig it ). Один трит эквивалентен log 2  3 (около 1,58496) бит информации .

Хотя термин «троичная» чаще всего относится к системе, в которой все три цифры являются неотрицательными числами (в частности, , 1 и 2) , прилагательное также дает свое название сбалансированной троичной системе, включающей цифры −1 , 0 и +1, используемые в сравнительной логике и троичных компьютерах .

Сравнение с другими базами

Представления целых чисел в троичной системе не становятся неудобно длинными так быстро, как в двоичной . Например, десятичное 365 (10) или шестеричное 1 405 (6) соответствуют двоичному 1 0110 1101 (2) (девять бит ) и троичному 111 112 (3) (шесть цифр). Однако они все еще гораздо менее компактны, чем соответствующие представления в таких основаниях, как десятичное — см. ниже компактный способ кодирования троичных чисел с использованием девятеричной (основание 9) и семнадцатеричной (основание 27).

Что касается рациональных чисел , троичная система предлагает удобный способ представления 1/3 то же самое, что и шестеричная система (в отличие от ее громоздкого представления в виде бесконечной строки повторяющихся цифр в десятичной системе); но основным недостатком является то, что, в свою очередь, троичная система не предлагает конечного представления для 1/2 (ни для 1/4 , 1/8 и т. д.), поскольку 2 не является простым множителем основания; как и в случае с основанием два, одна десятая (десятичная 1/10 , шестеричный 1/14 ) ​​не может быть представлена ​​точно (для этого потребовалась бы, например, десятичная дробь); также не может быть представлена ​​и одна шестая (шестеричная 1/10 , десятичная 1/6 ).

Сумма цифр в троичной системе счисления в отличие от двоичной

Значение двоичного числа с n битами, все из которых равны 1, равно 2 n  − 1 .

Аналогично, для числа N ( b , d ) с основанием b и d цифрами, каждая из которых имеет максимальное цифровое значение b  − 1 , мы можем записать:

N ( b , d ) = ( b  − 1) b d −1 + ( b  − 1) b d −2 + … + ( b  − 1) b 1 + ( b  − 1) b 0 ,
N ( b , d ) = ( b  − 1)( b d −1 + b d −2 + … + b 1 + 1),
N ( b , d ) = ( b  − 1) M .
bM = b d + b d −1 + … + b 2 + b 1 и
M = − b d −1  −  b d −2  − ... − b 1  − 1 , поэтому
бМ  −  М = бд  − 1 , или
М = б д  − 1/б  − 1 .

Затем

N ( б , г ) = ( б  − 1) М ,
N ( б , г ) =( б  − 1)( б д  − 1)/б  − 1 ,
N ( b , d ) = b d  − 1.

Для трехзначного троичного числа N (3, 3) = 3 3  − 1 = 26 = 2 × 3 2 + 2 × 3 1 + 2 × 3 0 = 18 + 6 + 2 .

Компактное троичное представление: основания 9 и 27

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

Практическое использование

Использование троичных чисел для уравновешивания неизвестного целого веса от 1 до 40 кг с грузами весом 1, 3, 9 и 27 кг (4 троичные цифры на самом деле дают 3 · 4 = 81 возможных комбинаций: от −40 до +40, но полезны только положительные значения)

В определенной аналоговой логике состояние схемы часто выражается троично. Это чаще всего встречается в схемах КМОП , а также в транзисторно-транзисторной логике с выходом тотемного полюса . Говорят, что выход либо низкий ( заземленный ), либо высокий, либо открытый ( высокий- Z ). В этой конфигурации выход схемы фактически вообще не подключен к какому-либо опорному напряжению . Там, где сигнал обычно заземлен на определенную опору или на определенном уровне напряжения, состояние называется высокоимпедансным, поскольку оно открыто и служит своей собственной опорой. Таким образом, фактический уровень напряжения иногда непредсказуем.

Редкая «тернарная точка» в общем использовании используется для оборонительной статистики в американском бейсболе (обычно только для питчеров ), чтобы обозначить дробные части иннинга. Поскольку команде в нападении разрешено три аута , каждый аут считается одной третью оборонительного иннинга и обозначается как .1 . Например, если игрок отыграл все 4-й, 5-й и 6-й иннинги, а также достиг 2 аутов в 7-м иннинге, его колонка отыгранных иннингов для этой игры будет указана как 3.2 , что эквивалентно 3+23 (иногда используется как альтернатива некоторыми хранителями записей). При таком использовании только дробная часть числа записывается в троичной форме. [2] [3]

Троичные числа можно использовать для удобной передачи самоподобных структур, таких как треугольник Серпинского или множество Кантора . Кроме того, оказывается, что троичное представление полезно для определения множества Кантора и связанных с ним множеств точек из-за способа построения множества Кантора. Множество Кантора состоит из точек от 0 до 1, которые имеют троичное выражение, не содержащее ни одного экземпляра цифры 1. [4] [5] Любое завершающее расширение в троичной системе эквивалентно выражению, которое идентично до члена, предшествующего последнему ненулевому члену, за которым следует член на единицу меньше последнего ненулевого члена первого выражения, за которым следует бесконечный хвост двоек. Например: 0,1020 эквивалентно 0,1012222... потому что расширения одинаковы до «двойки» первого выражения, двойка была уменьшена во втором расширении, а конечные нули были заменены конечными двойками во втором выражении.

Троичная система счисления — это целочисленная система с самой низкой экономичностью , за ней следуют двоичная и четвертичная . Это связано с ее близостью к математической константе e . Благодаря этой эффективности она используется в некоторых вычислительных системах. Она также используется для представления трехвариантных деревьев , таких как системы телефонных меню, которые позволяют получить простой путь к любой ветке.

Форма избыточного двоичного представления , называемая двоичной системой счисления со знаком , иногда используется в низкоуровневом программном обеспечении и оборудовании для выполнения быстрого сложения целых чисел, поскольку она может устранить переносы . [6]

Двоично-кодированный троичный

Моделирование троичных компьютеров с использованием бинарных компьютеров или взаимодействие между троичными и двоичными компьютерами может включать использование двоично-кодированных троичных чисел (BCT) с двумя или тремя битами, используемыми для кодирования каждого трита. [7] [8] Кодирование BCT аналогично двоично-кодированному десятичному (BCD) кодированию. Если значения трита 0, 1 и 2 закодированы как 00, 01 и 10, преобразование в любом направлении между двоично-кодированными троичными и двоичными числами может быть выполнено за логарифмическое время . [9] Доступна библиотека кода C , поддерживающая арифметику BCT. [10]

Попробуйте

Некоторые троичные компьютеры, такие как « Сетунь», определяли трит как шесть тритов [11] или приблизительно 9,5 бит (что содержит больше информации, чем фактический двоичный байт ). [12]

Смотрите также

Ссылки

  1. ^ Киндра, Владимир; Рогалев, Николай; Осипов, Сергей; Злывко, Ольга; Наумов, Владимир (2022). «Исследования и разработки троичных энергетических циклов». Изобретения . 7 (3): 56. doi : 10.3390/inventions7030056 . ISSN  2411-5134.
  2. ^ Эшли Макленнан (2019-01-09). "Полное руководство для начинающих по статистике бейсбола: статистика питчинга и что она означает". Благослови вас, парни . Получено 2020-07-30 .
  3. ^ "Статистика - Команда - Питчинг". MLB (Высшая лига бейсбола) . Получено 30 июля 2020 г.
  4. ^ Солтанифар, Мохсен (2006). «О последовательности фракталов Кантора». Журнал бакалаврской математики Rose Hulman . 7 (1). Статья 9.
  5. ^ Солтанифар, Мохсен (2006). «Другое описание семейства средних α-множеств Кантора». Американский журнал бакалаврских исследований . 5 (2): 9–12.
  6. ^ Фатак, Д.С.; Корен, И. (1994). «Гибридные системы знаковых цифр: унифицированная структура для избыточных представлений чисел с ограниченными цепями распространения переноса» (PDF) . IEEE Transactions on Computers . 43 (8): 880–891. CiteSeerX 10.1.1.352.6407 . doi :10.1109/12.295850. 
  7. ^ Фридер, Гидеон; Лук, Клемент (февраль 1975 г.). «Алгоритмы для двоично-кодированных сбалансированных и обычных тернарных операций». IEEE Transactions on Computers . C-24 (2): 212–215. doi :10.1109/TC.1975.224188. S2CID  38704739.
  8. ^ Пархами, Бехруз; МакКеон, Майкл (2013-11-03). «Арифметика с двоично-кодированными сбалансированными троичными числами». Асиломарская конференция по сигналам, системам и компьютерам 2013 года . Пасифик-Гроув, Калифорния, США. стр. 1130–1133. doi :10.1109/ACSSC.2013.6810470. ISBN 978-1-4799-2390-8. S2CID  9603084.{{cite book}}: CS1 maint: location missing publisher (link)
  9. ^ Джонс, Дуглас В. (июнь 2016 г.). «Двоично-кодированная троичная система и ее обратная».
  10. ^ Джонс, Дуглас В. (29.12.2015). «Тернарные типы данных для программистов на языке C».
  11. ^ Импальяццо, Джон; Пройдаков, Эдуард (2006). Перспективы советской и российской вычислительной техники. Первая конференция IFIP WG 9.7, SoRuCom 2006. Петрозаводск, Россия: Springer . ISBN 978-3-64222816-2.
  12. ^ Брусенцов, Н. П.; Маслов, СП; Рамиль Альварес, Х.; Жоголев, Е. А. "Развитие троичных компьютеров в Московском государственном университете" . Получено 2010-01-20 .

Дальнейшее чтение

Внешние ссылки