- •1. Переведення чисел із однієї позиційної системи числення в іншу
- •1.1. Алгоритм безпосередньої заміни
- •2.2. Переведення цілих чисел з системи числення з основою q в систему числення p
- •2.3. Переведення дробових чисел
- •2.4. Точність переведення дробових чисел з системи числення з основою q в систему числення p
- •2.5. Переведення чисел із однієї системи числення в іншу у випадку
- •2.6.1. Переведення чисел у симетричні і кососиметричні системи
- •2.6.2. Переведення чисел із симетричних і кососиметричних
- •2.6.3. Переведення чисел у неканонічну двійкову систему
- •2.6.4. Переведення з неканонічної двійкової системи у канонічну
- •Рекомендується виконати домашнє завдання 10.
- •2.7. Системи числення з від’ємними основами
- •2.7.1. Переведення цілих десяткових чисел у мінус-двійкову
- •2.7.2. Переведення дробових десяткових чисел у мінус-двійкову
- •2.7.3. Переведення змішаних дробових десяткових чисел у
- •2.8. Переведення двійкових чисел у мінус-двійкову систему
- •2.8.1. Переведення додатних двійкових чисел у мінус-двійкову
- •2.8.2. Переведення від’ємних двійкових чисел у мінус-двійкову
- •2.8.3. Перехід від додатного числа, заданого в мінус-двійковій системі числення до від’ємного і навпаки
- •2.8.4. Переведення чисел з мінус-двійкової системи числення
- •2.9. Переведення чисел з десяткової системи числення в сзк з використанням властивостей залишків
- •2.10. Метод ортогональних базисів переведення чисел з сзк
- •Рекомендується виконати домашнє завдання 15.
- •2.11. Переведення чисел з сзк в десяткову систему числення
- •2.12. Питання для самоконтролю
- •2.13. Завдання для практичної роботи
- •2.14. Завдання для самостійної роботи
- •Додатки
2.6.3. Переведення чисел у неканонічну двійкову систему
з цифрами {1, }
Двійкова система з цифрами {1, } відрізняється від канонічної двійкової системи з цифрами {0, 1} тим, що серед використовуваних символів відсутній нуль. Ця обставина робить неможливим представлення в системі {1, } деяких цілих і дробових чисел у вигляді скінченої множини символів даної системи. Зокрема, неможливість представлення у вигляді скінченої множини цифр парних цілих чисел, наприклад приводить до використання нескінчених дробів, що зумовлює похибку при представленні цих чисел в системі {1, }.
В той же час існують числа, які не мають єдиного зображення, наприклад, число 1 може бути представлено у вигляді
, . (2.8)
Співвідношення (2.8) виражає зв’язок між канонічною двійковою системою і системою {1, }.
Для переведення додатного непарного числа (числа, молодший розряд якого є 1) потрібно спочатку представити його в двійковій канонічній системі з цифрами {0,1}. Потім, переглядаючи отримане представлення зліва направо, необхідно виділити всі групи цифр вигляду 00...01, навіть якщо вони включають тільки один нуль. Ці групи заміняють на групи вигляду , а інші одиниці залишають без зміни.
Для переведення від’ємного непарного цілого числа можливі два варіанти:
всі групи цифр вигляду 00...01 необхідно замінити на групи 1...11, а інші цифри 1 замінити на ;
всі цифри 1 замінюються на , а потім групи цифр вигляду необхідно замінити на групи 1...11.
Приклад 2.13. Перевести двійкові числа і в систему з основою 2 і цифрами {1, }.
Розв’язання. Використовуючи співвідношення (2.8), процес переведення додатного числа зводимо до заміни комбінацій 001, 01 комбінаціями відповідно і , тобто .
Переведення від’ємного числа здійснимо двома способами:
1) ;
2) .
Легко бачити, що з додатного числа відповідне відємне число (і навпаки) можна одержати шляхом заміни 1 на і на 1.
Парні числа (додатні чи від’ємні) можна перевести тільки наближено, тобто з певною похибкою або нескінченим дробом.
В зв’язку з цим для одержання скінченого подання як парних, так і непарних додатних чисел в системі { } пропонується наступний запис чисел в системі {0,1}:
, (2.9)
де , – адитивна добавка, яку можна розглядати як похибку представлення чисел, яка вноситься перед переведенням чисел. Якщо , то маємо парне число і тоді адитивна добавка береться із знаком “+”, якщо , то маємо непарне число і тоді адитивна добавка береться із знаком “–”.
На основі (2.9), для переведення чисел в систему {1, } пропонується наступний алгоритм:
при переведені парного числа, в розряд , записують цифру 1 (що відповідає додаванню в (2.9) величини ) і роблять заміни комбінацій на з дописуванням в кінці (в розряд ) цифри ;
у випадку непарного числа до заданого числа, в розряд , дописують цифру (що відповідає відніманню в (2.9) величини ) і роблять заміни комбінацій на , а комбінацію на з дописуванням в кінці (в розряд ) цифри 1;
Можна показати, що похибка перетвореного числа буде обчислюватись за формулами:
для парного числа ;
для непарного числа .
Приклад 2.14. Перевести в систему цілі додатні числа ( ): і при .
Розв’язання. Згідно з описаним вище алгоритмом будемо мати:
При :
, ;
, .
При :
, ;
, .
При :
, ;
, .
З одержаних результатів бачимо, що абсолютна похибка переведення однакова як для непарних, так і парних чисел. Непарні числа переводяться з недостачею, а парні – з надвишком.
Приклад 2.15. Перевести в систему {1, } дробові числа: при .
Розв’язання. Спочатку підготуємо числа до перетворення, згідно із заданим параметром s. Після цього замінюємо в зображені числа комбінації на , а комбінацію на з дописуванням в кінці (в розряд з номером ) цифри і 1, відповідно. В результаті одержуємо:
, ;
, .
У зв’язку з тим, що деякі числа в системі представляються неоднозначно, формулу (2.9) можна узагальнити, дописавши нулів перед старшим розрядом числа
, (2.10)
де .
Приклад 2.16. Перевести в систему числа і при , і .
Розв’язання. Спочатку підготуємо числа до перетворення, згідно із заданими параметрами k і s. Після цього перетворюємо їх і обчислюємо похибку:
1. ,
,
;
,
.
2. ,
,
;
,
.
Аналогічні результати можна дістати і для переведення від’ємних чисел, скориставшись правилом переведення від’ємних чисел.