- •Глава 2.1 Зображення чисел
- •2.2. Позиційні системи числення
- •2.3. Перетворення чисел з недесяткової системи в десяткову
- •2.4. Перетворення з десяткової системи в недесяткову
- •Цілі числа
- •1. Спочатку частка t дорівнює n, а запис порожній.
- •Дробові числа
- •1. Спочатку зображенням є «0.».
- •2. Поки одержано менше за r дробових цифр,
- •2.5. Зв’язок двійкових, вісімкових та шістнадцяткових записів
- •2.6. Додавання та множення у позиційних системах числення
- •Додавання
- •Множення
- •2.7. Внутрішнє зображення числових даних
- •Зображення цілих чисел
- •1. За прямим кодом числа |a| шляхом заміни всіх 0 на 1 і всіх 1 на 0 будуємо обернений код r(a).
- •2. Код, обернений до r(a), є прямим кодом числа |a|.
- •1. Будуємо код r(d(a)), обернений до d(a).
- •2. До r(d(a)) як беззнакового цілого додаємо 1.
- •Принципи зображення дійсних чисел
- •Контрольні запитання
2. До r(d(a)) як беззнакового цілого додаємо 1.
Відповідність між кодами додатних та від’ємних чисел та самими числами при різних значеннях N подано в такій таблиці.
Коди |
Числа |
N = 1 |
N = 2 |
N = 4 |
01…11 … 00…10 00…01 00…00 11…11 11…10 11…01 … 10…00 |
… 2 1 0 –1 –2 –3 … – |
127 … 2 1 0 –1 –2 –3 … –128 |
32767 … 2 1 0 –1 –2 –3 … –32768 |
2147483647 … 2 1 0 –1 –2 –3 … –2147483548 |
Як бачимо, від’ємних чисел на одне більше, ніж додатних.
-
Принципи зображення дійсних чисел
-
Деякі особливості зображення дійсних чисел тут опущено, щоб не загромаджувати викладення.
Для дійсних чисел найчастіше використовують 4, 6, 8 або 10 байт, поділених на поля (послідовності бітів) <знак><порядок><мантиса>. Ці поля означають таке.
Поле <знак> має довжину 1 біт, його значення зображають знак: 0 — «+», 1 — знак «–». Поле <порядок> у деякий спеціальний спосіб задає показник степеня числа 2 (він може бути як додатним, так і від’ємним). Поле <мантиса> означає дробову частину — невід’ємне число строго менше 1.
Поля зображають число в такий спосіб. Мантиса додається до 1, сума множиться на степінь числа 2, заданий порядком, і враховується знак. Отже, число є значенням виразу вигляду
(1 + дробова .
Сума в дужках не менше 1 і строго менше 2, тому кажуть, що це зображення числа є нормалiзованим.
-
Дійсні числа в описаному зображенні утворюють обмежену підмножину множини раціональних чисел; зокрема, серед них є число, найменше за модулем і відмінне від 0, а також число, найбільше за модулем.
-
Між двома послідовними числами в описаному зображенні є ненульова різниця. Вона дуже мала, якщо числа близькі до 0, і досягає десятків тисяч, якщо числа близькі до найбільшого за модулем.
-
Що більше байтів займає зображення, то більше чисел воно дозволяє закодувати й то менше між ними різниці.
-
Контрольні запитання
2.1.
З чим зв’язують виникнення десяткової системи числення?
2.2.
Які ви знаєте системи числення?
2.3.
Що таке позиційна система числення?
2.4.
Наведіть приклад адитивної системи числення.
2.5.
Чи можна використовувати позиційні системи числення з цифрами, що мають різні основи?
2.6.
Як кодуються цифри в системах числення, основа яких більше десяти?
2.7.
Розповісти алгоритм перекладу десяткового запису числа в систему числення, відмінну від десяткової.
2.8.
Розповісти алгоритм перекладу запису числа з недесяткової системи числення в десяткову.
2.9.
Скласти таблиці додавання для систем числення з основами 2, 4, 16.
2.10.
Скласти таблицю множення для систем числення з основами 2, 4, 8, 16.
2.11.
Які системи числення використовують у програмуванні?
2.12.
Розповісти алгоритм перекладу двійкового запису числа у вісімковий (шістнадцятковий).
2.13.
Розповісти алгоритм перекладу запису числа з основою вісім (шістнадцять) у двійковий.
2.14.
Чому квадрат числа P–1 у P-ковому запису обов’язково має старшу цифру P–2, а молодшу 1?
-
Задачі
2.1. |
Запишіть число як суму степенів основи системи числення з коефіцієнтами: а) 5768; б) 842,413; в) 12,223; г) А09,7F16. |
2.2. |
Запишіть число як суму степенів основи системи числення з коефіцієнтами та визначте десятковий запис числа: а) 2,336; б) 291,4D615; в) 245,5678; г) A09,С3513; ґ) B,1F416; д) 2743,1611. |
2.3. |
Перекласти десятковий запис у двійкову, вісімкову та шістнадцяткову системи: а) 94,341; б) 13,55; в) 2948,77; г) 382,33. |
2.4. |
Перетворити десяткові записи чисел на двійкові, вісімкові та шістнадцяткові: а) 100; б) 255; в) 1024; г) 32767; ґ) 256; д) 640; е) 16382; є) 65537. |
2.5. |
Перетворити шістнадцяткові записи чисел на вісімкові та десяткові: а) F1; б) FF; в) 4AB; г) FFFE; ґ) 1FF; д) 8A1; е) 7FFF. |
2.6. |
Перетворити вісімкові записи чисел на шістнадцяткові та десяткові: а) 377; б) 1200; в) 1232; г) 400; ґ) 1777; д) 3777; е) 7777. |
2.7. |
Додайте числа в заданій системі числення: а) ; б) ; в) ; г) ; ґ) ; д) . |
2.8. |
Перемножте числа в заданій системі числення: а) ; б) ; в) ; г) ; ґ) ; д) . |
2.9. |
Зобразити 36-кові записи чисел ZY, 100 у десятковому записі (36-кові цифри A, B, , Y, Z позначають десятковi числа 10, 11, , 34, 35, відповідно). |
2.10. |
За основою P та P-ковими записами дробів Q указати їх десяткове зображення: а) P = 2; Q = 0,0001; 0,1111; б) P = 3; Q = 0,22; 0,(11); в) P = 16; Q = 0,1; 0,F; 0,8; 0,(7); г) P =2; Q = 0,001; 0,1101; 0,000001; ґ) P = 3; Q = 0,(20); 0,(02); 0,11; д) P = 16; Q = 0,1F; 0,FE; 0,81; 0,3(F). |
2.11. |
Записати P-кове зображення десяткового дробу Q, де: а) Q = 0,5; P = 2, 3, 5, 8, 16, 20; б) Q = 0,1; P = 3, 5, 8, 16, 20; в) Q = 0,75; P = 2, 3, 5, 8, 16, 20; г) Q = 0,2; P = 3, 5, 8, 16, 20. |
2.12. |
Указати двобайтовий додатковий код чисел: а) –1, –8, –9, –32767, –32768; б) –255, –256, –640, –641. |
2.13. |
Нехай при додаванні та відніманні чисел у знаковому зображенні перенесення із старшого цифрового розряду перетворюється на зміст знакового розряду, а перенос із знакового розряду втрачається. Указати значення виразу (maxi та mini позначають максимальне та мінімальне цілі числа): а) maxi+1;б) mini–1. |