Сбалансированный тройной - Balanced ternary
Системы счисления |
---|
Индусско-арабская система счисления |
Восточная Азия |
Европейский |
Американец |
По алфавиту |
Бывший |
Позиционные системы к основание |
Нестандартные позиционные системы счисления |
Список систем счисления |
Сбалансированный тройной это тройной система счисления (т.е. основание 3 с тремя цифры ), который использует сбалансированное представление цифр со знаком из целые числа в котором цифры имеют значения −1, 0, и 1. Это контрастирует со стандартной (несбалансированной) троичной системой, в которой цифры имеют значения 0, 1 и 2. Сбалансированная троичная система может представлять все целые числа без использования отдельной знак минус; значение первой ненулевой цифры числа имеет знак самого числа. В то время как двоичные числа с цифрами 0 и 1 обеспечивают простейшую позиционную систему счисления для натуральные числа (или для положительных целых чисел, если в качестве цифр используются 1 и 2), сбалансированная троичная система обеспечивает простейший автономный[необходимо определение ] позиционная система счисления для целые числа. Сбалансированная тройная система является примером нестандартная позиционная система счисления. Он использовался в некоторых ранних компьютерах[1] а также в некоторых решениях головоломки с балансом.[2]
В разных источниках используются разные глифы для представления трех цифр в сбалансированной троичной системе. В этой статье T (похожий на лигатура знака минус и 1) представляет −1, пока 0 и 1 представляют себя. Другие соглашения включают использование '-' и '+' для представления -1 и 1 соответственно, или использование Греческая буква тета (Θ), который напоминает знак минус в круге, обозначающий −1. В публикациях о Сетунь компьютер, −1 представляется перевернутым 1: "1".[1]
Сбалансированная тройка рано появляется в Майкл Стифель книга Арифметика Интегра (1544).[3] Это также встречается в произведениях Иоганн Кеплер и Леон Лаланн. Связанные схемы подписанных цифр в других базах обсуждались Джон Колсон, Джон Лесли, Огюстен-Луи Коши, и, возможно, даже древнеиндийский Веды.[2]
Определение
Позволять обозначим множество символы (также называемый глифы или же символы) , где символ иногда используется вместо Определить целое число -значная функция к
где правые части - целые числа с их обычными (десятичными) значениями. Эта функция, это то, что строго и формально устанавливает, как целочисленные значения присваиваются символам / глифам в Одним из преимуществ этого формализма является то, что определение «целых чисел» (как бы они ни определялись) не связано с какой-либо конкретной системой их записи / представления; таким образом, эти две различные (хотя и тесно связанные) концепции сохраняются отдельно.
Набор вместе с функцией образует сбалансированный представление цифр со знаком называется сбалансированный тройной система. Его можно использовать для представления целых и действительных чисел.
Тернарное целочисленное вычисление
Позволять быть Клини плюс из , который представляет собой множество всей конечной длины соединенный струны одного или нескольких символов (называемых его цифры) куда является целым неотрицательным числом и все цифры взяты из В Начните из это символ (справа), его конец является (слева), а его длина является . В троичная оценка это функция определяется путем присвоения каждой строке целое число
Струна представляет (относительно ) целое число Значение альтернативно может быть обозначено как Карта является сюръективный но не инъективно, так как, например, Однако каждое целое число имеет ровно одно представление под это не конец (слева) с символом т.е.
Если и тогда удовлетворяет:
что показывает, что удовлетворяет своего рода отношение повторения. Это рекуррентное соотношение имеет три начальных условия, по одному для каждого куда Явно они и
Это означает, что для каждой строки
что на словах говорит, что ведущий символы (слева в строке из 2 или более символов) не влияют на результирующее значение.
Следующие примеры иллюстрируют, как некоторые значения можно вычислить, где (как и раньше) все целые числа записываются в десятичной системе счисления (основание 10), а все элементы просто символы.
и используя указанное выше рекуррентное соотношение
Преобразование в десятичное
В сбалансированной троичной системе значение цифры п места слева от точка счисления это произведение цифры и 3п. Это полезно при преобразовании десятичных чисел в сбалансированные троичные. В следующих строках, обозначающих сбалансированную троичную систему, есть суффикс, bal3. Например,
- 10bal3 = 1 × 31 + 0 × 30 = 310
- 10ᴛbal3 = 1 × 32 + 0 × 31 + (−1) × 30 = 810
- −910 = −1 × 32 + 0 × 31 + 0 × 30 = ᴛ00bal3
- 810 = 1 × 32 + 0 × 31 + (−1) × 30 = 10ᴛbal3
Точно так же первое место справа от точки счисления занимает 3−1 = 1/3, второе место занимает 3−2 = 1/9, и так далее. Например,
- −2/310 = −1 + 1/3 = −1 × 30 + 1 × 3−1 = ᴛ.1bal3.
Декабрь Bal3 Расширение Декабрь Bal3 Расширение 0 0 0 1 1 +1 −1 ᴛ −1 2 1ᴛ +3−1 −2 ᴛ1 −3+1 3 10 +3 −3 ᴛ0 −3 4 11 +3+1 −4 ᴛᴛ −3−1 5 1ᴛᴛ +9−3−1 −5 ᴛ11 −9+3+1 6 1ᴛ0 +9−3 −6 ᴛ10 −9+3 7 1ᴛ1 +9−3+1 −7 ᴛ1ᴛ −9+3−1 8 10ᴛ +9−1 −8 ᴛ01 −9+1 9 100 +9 −9 ᴛ00 −9 10 101 +9+1 −10 ᴛ0ᴛ −9−1 11 11ᴛ +9+3−1 −11 ᴛᴛ1 −9−3+1 12 110 +9+3 −12 ᴛᴛ0 −9−3 13 111 +9+3+1 −13 ᴛᴛᴛ −9−3−1
Целое число делится на три тогда и только тогда, когда цифра в разряде единиц равна нулю.
Мы можем проверить паритет сбалансированного троичного целого числа путем проверки четности суммы всех триц. Эта сумма имеет ту же четность, что и само целое число.
Сбалансированная троичная система также может быть расширена до дробных чисел, подобно тому, как десятичные числа записываются справа от точка счисления.[4]
Десятичный −0.9 −0.8 −0.7 −0.6 −0.5 −0.4 −0.3 −0.2 −0.1 0 Сбалансированный троичный ᴛ.010ᴛ ᴛ.1ᴛᴛ1 ᴛ.10ᴛ0 ᴛ.11ᴛᴛ 0.ᴛ или ᴛ.1 0.ᴛᴛ11 0.ᴛ010 0.ᴛ11ᴛ 0.0ᴛ01 0 Десятичный 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 Сбалансированный троичный 1.0ᴛ01 1.ᴛ11ᴛ 1.ᴛ010 1.ᴛᴛ11 0.1 или 1.ᴛ 0.11ᴛᴛ 0.10ᴛ0 0.1ᴛᴛ1 0.010ᴛ 0
В десятичном или двоичном формате целочисленные значения и завершающие дроби имеют несколько представлений. Например, 1/10 = 0.1 = 0.10 = 0.09. И, 1/2 = 0.12 = 0.102 = 0.012. Некоторые сбалансированные троичные дроби также имеют несколько представлений. Например, 1/6 = 0.1ᴛbal3 = 0.01bal3. Конечно, в десятичном и двоичном формате мы можем опустить крайние правые конечные бесконечные нули после точки счисления и получить представление целого числа или конечной дроби. Но в сбалансированной троичной системе мы не можем опустить крайнюю правую конечную конечную цифру -1 после точки счисления, чтобы получить представление целого числа или конечной дроби.
Дональд Кнут[5] указал, что усечение и округление - это одна и та же операция в сбалансированной троичной системе - они дают точно такой же результат (свойство, разделяемое с другими сбалансированными системами счисления). Номер 1/2 не исключение; он имеет два одинаково действительных представления и два равнозначных усечения: 0.1 (округлить до 0 и усечь до 0) и 1.ᴛ (округлить до 1 и усечь до 1). Со странным основание, двойное округление также эквивалентно прямому округлению до конечной точности, в отличие от четной системы счисления.
Основные операции - сложение, вычитание, умножение и деление - выполняются так же, как и в обычной троичной системе. Умножение на два может быть выполнено путем добавления числа к самому себе или вычитания самого себя после сдвига влево.
Арифметический сдвиг влево сбалансированного троичного числа эквивалентен умножению на (положительную, целую) степень 3; а арифметический сдвиг вправо сбалансированного троичного числа эквивалентен делению на (положительную, целую) степень числа 3.
Преобразование в дробь и обратно
Дробная часть Сбалансированный тройной Дробная часть Сбалансированный тройной 1 1 1/11 0.01ᴛ11 1/2 0.1 1.ᴛ 1/12 0.01ᴛ 1/3 0.1 1/13 0.01ᴛ 1/4 0.1ᴛ 1/14 0.01ᴛ0ᴛ1 1/5 0.1ᴛᴛ1 1/15 0.01ᴛᴛ1 1/6 0.01 0.1ᴛ 1/16 0.01ᴛᴛ 1/7 0.0110ᴛᴛ 1/17 0.01ᴛᴛᴛ10ᴛ0ᴛ111ᴛ01 1/8 0.01 1/18 0.001 0.01ᴛ 1/9 0.01 1/19 0.00111ᴛ10100ᴛᴛᴛ1ᴛ0ᴛ 1/10 0.010ᴛ 1/20 0.0011
Преобразование повторяющегося сбалансированного троичного числа в дробь аналогично преобразование повторяющейся десятичной дроби. Например (из-за 111111bal3 = (36 − 1/3 − 1)10):
Иррациональные числа
Как и в любой другой базе целых чисел, алгебраические иррациональные и трансцендентные числа не заканчиваются и не повторяются. Например:
Сбалансированные троичные расширения дается в OEIS в качестве A331313, что из в A331990.
Преобразование из троичного
Несбалансированную троичную систему можно преобразовать в сбалансированную троичную систему двумя способами:
- Добавьте 1 трит за тритоном из первого ненулевого тритта с переносом, а затем вычтите 1 тритт за тритоном из того же тритта без заимствования. Например,
- 0213 + 113 = 1023, 1023 − 113 = 1T1bal3 = 710.
- Если 2 присутствует в троичной системе, превратите ее в 1T. Например,
- 02123 = 0010bal3 + 1T00bal3 + 001Tbal3 = 10ТТbal3 = 2310
Сбалансированный Логика Неподписанный 1 Истинный 2 0 Неизвестный 1 Т Ложь 0
Если три значения троичная логика находятся ложный, неизвестный и истинный, и они отображаются в сбалансированную троичную систему как T, 0 и 1 и в обычные троичные значения без знака, такие как 0, 1 и 2, тогда сбалансированная троичная система может рассматриваться как смещенная система счисления, аналогичная смещение двоичное системы. Если троичное число имеет п триц, то предвзятость б является
который представлен как все в традиционной или предвзятой форме.[6]
В результате, если эти два представления используются для сбалансированных и беззнаковых троичных чисел, беззнаковый п-trit положительное троичное значение может быть преобразовано в сбалансированную форму путем добавления смещения б а положительное сбалансированное число может быть преобразовано в беззнаковую форму путем вычитания смещения б. Кроме того, если Икс и y являются сбалансированными числами, их сбалансированная сумма равна Икс + y − б при вычислении с использованием традиционной тернарной арифметики без знака. Аналогично, если Икс и y - обычные троичные числа без знака, их сумма равна Икс + y + б при вычислении с использованием сбалансированной троичной арифметики.
Преобразование в сбалансированную троичную систему из любой целочисленной базы
Мы можем преобразовать в сбалансированную троичную систему по следующей формуле:
куда,
- апап−1...а1а0.c1c2c3... это исходное представление в исходной системе счисления.
- б это исходная система счисления. б равно 10 при преобразовании из десятичного числа.
- аk и ck цифры k местами слева и справа от точки счисления соответственно.
Например,
−25.410 = - (1Т × 1011 + 1TT × 1010 + 11×101−1) = - (1T × 101 + 1TT + 11 ÷ 101) = −10T1.11TT = T01T.TT11
1010.12 = 1Т10 + 1Т1 + 1Т−1 = 10Т + 1Т + 0.1 = 101.1
Сложение, вычитание, умножение и деление
Таблицы простого сложения, вычитания, умножения и деления показаны ниже. Для вычитания и деления, которых нет коммутативный, первый операнд указывается слева от таблицы, а второй - вверху. Например, ответ на 1 - T = 1T находится в нижнем левом углу таблицы вычитания.
Добавление + Т 0 1 Т Т1 Т 0 0 Т 0 1 1 0 1 1Т
Вычитание − Т 0 1 Т 0 Т Т1 0 1 0 Т 1 1T 1 0
Умножение × Т 0 1 Т 1 0 Т 0 0 0 0 1 Т 0 1
Разделение ÷ Т 1 Т 1 Т 0 0 0 1 Т 1
Сложение и вычитание мульти-трита
Многоточечное сложение и вычитание аналогично двоичному и десятичному. Складывайте и вычитайте трение за трением и соответствующим образом прибавляйте переносимость. Например:
1TT1TT.1TT1 1TT1TT.1TT1 1TT1TT.1TT1 1TT1TT.1TT1 + 11T1.T - 11T1.T - 11T1.T → + TT1T.1 ______________ ______________ _______________ 1T0T10.0TT1 1T1001.TTT1 _________ T_________________________ T_______________________________ ________________ 1T1110.0TT1 1110TT.TTT1 1110TT.TTT1 + T + T 1 + T 1 ______________ ________________ ________________ 1T0110.0TT1 1100T.TTT1 1100T.TTT1
Многоточечное умножение
Многоточечное умножение аналогично двоичному и десятичному умножению.
1TT1.TT × T11T.1 _____________ 1TT.1TT умножить 1 T11T.11 умножить T 1TT1T.T умножить 1 1TT1TT умножить 1 T11T11 умножить T _____________ 0T0000T.10T
Многоточечное деление
Сбалансированное троичное деление аналогично двоичному и десятичному делению.
Однако 0,510 = 0.1111...bal3 или 1.TTTT ...bal3. Если дивиденд превышает делитель плюс или минус половины, дробь частного должна быть 1 или T. Если дивиденд находится между плюсом и минусом половины делителя, дробь частного равна 0. Величина делимого должна быть сравнивать с половиной делителя перед установкой частного trit. Например,
1TT1.TT частное 0,5 × делитель T01.0 _____________ делитель T11T.1) T0000T.10T делимое T11T1 T00010T0, установить T _______ 111T 1TT1T 111T> 10T___00 T1 T11T.1 T001 10T0, установить T ________ 1T.T1T 1T.T1T 1TT1T> 10T0, установить T ________ 0
Другой пример,
1TTT 0,5 × делитель 1T _______ Divisor 11) 1T01T 1T = 1T, но 1T.01> 1T, установить 1 11 _____ T10 T10Другой пример,
101.TTTTTTTTT… или 100.111111111… 0,5 × делитель 1T _________________ делитель 11) 111T 11> 1T, установить 1 11 _____ 1 T1 <1 <1T, установить 0 ___ 1T 1T = 1T, trits end, установить 1.TTTTTTTTT… или 0,111111111…Квадратные корни и кубические корни
Процесс извлечения квадратный корень в сбалансированной троичной системе аналогичен десятичной или двоичной системе.