трійкова арифметика

Розглядаються троичная симетрична (врівноважена) система числення (ТСС) і базові операції вироблені в ній.

Трійкова система - позиційна система числення з целочисленному основи 3. Ми будемо розглядати варіант симетричній системи, значення в якій можуть бути негативними, нульовими або позитивними, інакше кажучи -1, 0, 1. Далі під поняттям троичная система, потрійне число і т.п . буде розумітися троичная симетрична позиційна система числення.

Всі ми вже звикли до десятковим числам (1; 3; 5), двійковим (101; 1011001) і навіть до шістнадцятковим (0xFF; 0xA5), а що з себе представляє потрійне число? Це така ж послідовність знаків (+0 + - + 0), тільки на відміну від раніше наведених систем замість цифр символи +, 0, -. Приклади трійчастий чисел і їх десятковий еквівалент: - + 3 = - 2 10. -0 3 = - 3 10. - 3 = - 4 10. + - 3 = 2 10. +0 3 = 3 10. ++ 3 = 4 10.

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

У загальному вигляді число в трійчастий системі можна уявити як суму добутків значення розряду на відповідну цього розряду ступінь числа 3 (в десятковому поданні).

Іншими словами: an ⋅ 3 n + a n-1 ⋅ 3 n-1 + ... + a 2 ⋅ 3 2 + a 1 ⋅ 3 + a 0 + a -1 ⋅ 3 -1 + a -2 ⋅ 3 -2 + ... + a -m + 1 ⋅ 3 -m + 1 + a -m ⋅ 3 -m. де a i ∈ [- 1,0,1]. n. m. i ∈ N. Причому an ⋅ 3 n + a n-1 ⋅ 3 n-1 + ... + a 2 ⋅ 3 2 + a 1 ⋅ 3 + a 0 - ціла частина числа, a -1 ⋅ 3 -1 + a - 2 ⋅ 3 -2 + ... + a -m + 1 ⋅ 3 -m + 1 + a -m ⋅ 3 -m - дрібна частина.

Розглянемо потрійне число + -0-0 ++. + -0-0 ++ = 1 ⋅ 3 7-1 - 1 ⋅ 3 6-1 + 0 ⋅ 3 5-1 - 1 ⋅ 3 4-1 + 0 ⋅ 3 3-1 + 1 ⋅ 3 2-1 + 1 ⋅ 3 1-1 = 3 6 - 3 5 +0 - 3 3 + 0 + 3 + 1 = 463

Переклад з десяткової системи в трійкову симетричну (врівноважену) систему

Для перекладу з десяткової системи в трійкову, можна скористатися наступним алгоритмом:

  1. Початкове число (в десятковій системі) ділимо на 3.
  2. Якщо залишок від ділення дорівнює 2, то до результату додаємо +1.
  3. Якщо результат від ділення більше 2, - виконуємо його розподіл на 3.
  4. Пункти 2, 3 виконуємо до тих пір поки не отримаємо результат від ділення менше 3 (див. П.3).
  5. Після виконання процедур спочатку виписуємо результат від останнього розподілу, при цьому якщо результат дорівнює двом то його виписуємо як + -, потім виписуємо залишки від попередніх операцій, так що перший залишок від ділення був виписаний останнім (тобто виписуємо від низу до верху), при цьому всі залишки рівні двом виписуються як значення - (див. п.2, ми робили позику з залишку в результат).
  6. Значення рівні 1 виписуються як +, 0 залишаємо як є (0 і в трійчастий системі 0).

Приклад: Переведемо число 19 з десяткової системи в трійкову систему.
Розділимо 19 на 3. Отримаємо 6, а в залишку буде 19 - 6 × 3 = 19 - 18 = 1. Так як результат більше 2 (6> 2), необхідно продовжити виконання операцій ділення. Тепер 6 ділимо на 3. Отримуємо 2, в залишку 6 - 2 × 3 = 6 - 6 = 0. Результат менше 3. Далі ділити результат не потрібно. Виписуємо: 2, 0, 1. Замінюємо, отримуємо: + -0 + - 19 в троичной системи.

Приклад: Переведемо число 5 з десяткової системи в трійкову систему.
Розділимо 5 на 3. Отримаємо 1, а в залишку буде 5 - 1 × 3 = 5 - 3 = 2. Так як залишок дорівнює 2, то робимо позику в результат додаючи до нього +1, тобто результат тепер дорівнює 2. Результат менше 3. Далі ділити результат не потрібно. Виписуємо: 2, 2, але так як 2 з результату виписується як + -, а з залишку як +, отримуємо + -.

Примітка: даний спосіб більше придатний для перетворення з обчислювальним пристроєм, так як доводиться здійснювати безліч операцій ділення.

Негативні числа

Ключова особливість троичной системи - наявність знака числа в самому алфавіті, тобто однозначно визначається знак числа по самому числу. Якщо ведучий ненульовий розряд негативний, то і саме число є негативним. Зміна знака числа проводиться інвертуванням кожного розряду числа: позитивний розряд змінюється на негативний і навпаки, нуль залишається без змін.

округлення

Іншою важливою особливістю троичной системи є механізм округлення чисел - простим відкиданням молодших розрядів виходить найкраще при даному залишився кількості цифр наближення цього числа і округлення не потрібно. Це наслідок того, що абсолютна величина частини числа, представленої відскакують молодшими цифрами, ніколи не перевершує половини абсолютної величини частини числа (0, + 2 = 1 6> Параметри 0,0+ = 1 9), відповідної молодшої значущої цифри молодшого з зберігаються розрядів.

Округлимо потрійне число 0, ++++ = 0,493827 до 3 знаків після коми: 0, +++ = 0,48148. до 2 знаків дає: 0, ++ = 0,4444 (4). до 1 знака - 0, + = 0,3333 (3).

Додавання проводиться за загальними правилами для позиційних систем.

В результаті другої операції віднімання виходить залишок з розрядністю рівною розрядності подільника, тобто необхідно зробити розподіл залишку без позики наступного розряду діленого. Отриманий результат записуємо під попереднім результатом.

Примітка: розподіл числа на 3 n. де n> 0, n ∈ N. здійснюється зсувом вправо: 18 = + -00; 6 = + -0; 2 = + -; 2 3 = +, -.

Ознака подільності на 2

Число a в троичной системи можна представити у вигляді a = ana n-1 ... a 1 a 0 ¯ = (3 n - 1) ⋅ an + (3 n-1 - 1) ⋅ a n-1 + ... + (3 2 - 1) ⋅ a 2 + (3 - 1) ⋅ a 1 + an + a n-1 + ... + a 1 + a 0. де ai ∈ [- 1,0,1]. i = 0, 1, .... n. a n ≠ 0.

Позначимо b = (3 n - 1) ⋅ a n + (3 n-1 - 1) ⋅ a n-1 + ... + (3 2 - 1) ⋅ a 2 + (3 - 1) ⋅ a 1,

c = a n + a n-1 + ... + a 1 + a 0. тобто a = b + c.

Розглянемо число b = (3 n - 1) ⋅ a n + (3 n-1 - 1) ⋅ a n-1 + ... + (3 2 - 1) ⋅ a 2 + (3 - 1) ⋅ a 1.

Множниками a i. є (3 k - 1).

При будь-якому k ≥ 1 (3 k - 1) = (3 - 1) ⋅ (3 k-1 + 3 k-2 + ... + 3 + 1) = 2 ⋅ (3 k-1 + 3 k-2 + ... + 3 + 1). отже, можна записати b = 2 ⋅ (...). тобто b ділиться 2.

Отже, число a = b + c ділиться на 2 тоді, коли ділиться на 2 число c = a n + a n-1 + ... + a 1 + a 0. яке є сумою цифр числа a.

Число в троичной системи ділиться на 2 (число парне), якщо сума значень його розрядів ділиться на 2.

Числа, які діляться на 2

Числа, які не діляться на 2

Ознака подільності на 3

Число a в троичной системи можна представити у вигляді a = ana n-1 ... a 1 a 0 ¯ = 3 n ⋅ an + 3 n-1 ⋅ a n-1 + ... + 3 1 ⋅ a 1 + 3 0 ⋅ a 0 . де ai ∈ [- 1,0,1]. i = 0, 1, .... n. a n ≠ 0.

Задамо число b = a - a 0. тобто b = 3 n ⋅ an + 3 n-1 ⋅ a n-1 + ... + 3 1 ⋅ a 1 = 3 ⋅ (3 n-1 ⋅ an + 3 n-2 ⋅ a n-1 + ... + 3 1 ⋅ a 2 + a 1).

Звідси випливає, що число b ділиться на 3, а число a = b + a 0 ділиться на 3 тоді і тільки тоді, коли a 0 ділиться на 3, цьому відповідає значення a 0 = 0. таким чином, числа в троичной системи діляться на 3, якщо молодший розряд дорівнює нулю.

Числа, які діляться на 3

Числа, які не діляться на 3

Значення в трійчастий системі