Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Sistemi_chislennja.doc
Скачиваний:
7
Добавлен:
04.09.2019
Размер:
121.86 Кб
Скачать

Переведення чисел з однієї системи числення в іншу

Найбільш часто зустрічається системи числення, – це двійкова, шістнадцятирічна і десяткова. Як же пов'язані між собою представлення числа в різних системах числення? Розглянемо різні способи переведення чисел з однієї системи числення в іншу на конкретних прикладах.

Хай потрібно перевести число 567 з десяткової у двійкову систему. Спочатку визначимо максимальну степінь двійки, таку, аби два в цій ступені було менше або рівне вихідному числу. У нашому випадку це 9, оскільки 29=512, а 210=1024, що більше початкового числа. Таким чином, ми отримаємо кількість розрядів результату. Воно дорівнює 9+1=10. Тому результат матиме вигляд 1ххххххххх, де замість х можуть стояти будь-які двійкові цифри. Знайдемо другу цифру результату. Піднесемо двійку до ступеня 9 і віднімемо з вихідного числа: 567-29=55. Залишок порівнянний з числом 28=256. Оскільки 55 менше 256, то дев'ятий розряд буде нулем, тобто результат набере вигляду 10хххххххх. Розглянемо восьмий розряд. Оскільки 27=128>55, то й він буде нульовим.

Сьомий розряд також становиться нульовим. Шуканий двійковий запис числа набуває вигляду 1000хххххх. 25=32<55, тому шостий розряд дорівнює 1 (результат 10001ххххх). Для залишку 55-32=23 справедлива нерівність 24=16<23, що означає рівність одиниці п'ятого розряду. Діючи аналогічно, отримуємо в результаті число 1000110111. Ми розклали дане число по ступенях двійки:

567=1*29+0*28+0*27+0*26+1*25+1*24+0*23+1*22 +1*21+1*20

При іншому способі переведення чисел використовується операція ділення в стовпчик. Розглянемо те ж саме число 567. Розділивши його на 2, отримаємо частку 283 і залишок 1. Проведемо ту ж саму операцію з числом 283. Отримаємо частку 141, залишок 1. Знову ділимо отриману частку на 2, і так до тих пір, поки частка не стане менша дільника. Тепер для того, щоб отримати число в двійковій системі числення, досить записати останню частку, тобто 1, і приписати до нього в зворотному порядку всі отримані в процесі ділення залишки.

Результат, природно, не змінився: 567 в двійковій системі числення записується як 1000110111.

Ці два способи застосовуються при переведенні числа з десяткової системи в систему з будь-якою основою. Для закріплення навиків розглянемо переведення числа 567 в систему числення з основою 16.

Спочатку здійснимо розкладання даного числа по степенях основи. Шукане число складатиметься з трьох цифр, оскільки

162=256 < 567 < 163=4096.

Визначимо цифру старшого розряду.

2*162=512<567<3*162=768,

отже шукане число має вигляд 2хх, де замість х можуть стояти будь-які шістнадцятирічні цифри. Залишається розподілити по наступних розрядах число 55 (567-512).

3*16=48<55<4*16=64,

означає в другому розряді знаходиться цифра 3. Остання цифра дорівнює 7 (55-48). Шукане шістнадцятирічне число дорівнює 237.

Другий спосіб полягає у виконанні послідовного ділення в стовпчик, з єдиною відмінністю в тому, що ділити треба не на 2, а на 16, і процес ділення закінчується, коли частка стає строго меншою 16.

Звичайно, не треба забувати і про те, що для запису числа в шістнадцятирічній системі числення, необхідно замінити 10 на A, 11 на B і так далі.

Операція переведення в десяткову систему виглядає набагато простішою, оскільки будь-яке десяткове число можна представити у вигляді

x = a0*pn + a1*pn-1 + ... + an-1*p1 + an*p0,

де a0 ... an – це цифри даного числа в системі числення з основою р.

Приклад. Переведемо число 4A3F в десяткову систему. За визначенням, 4A3F= 4*163+A*162+3*16+F. Замінивши A на 10, а F на 15, отримаємо 4*163+10*162+3*16+15= 19007.

Мабуть, найпростіше здійснюється переклад чисел з двійкової системи в системи з основою, рівною степеням двійки (8 і 16), і навпаки. Для того, щоб ціле двійкове число записати в системі числення з основою 2n, потрібно

  • дане двійкове число розбити справа наліво на групи по n-цифр у кожній;

  • якщо в останній лівій групі виявиться менше за n розрядів, то доповнити її нулями до потрібної кількості розрядів;

  • розглянути кожну групу, як n-розрядне двійкове число, і замінити її відповідною цифрою в системі числення з основою 2n.

Двійково-шістнадцятирічна таблиця

2-ва

0000

0001

0010

0011

0100

0101

0110

0111

16-на

0

1

2

3

4

5

6

7

2-ва

1000

1001

1010

1011

1100

1101

1110

1111

16-на

8

9

A

B

C

D

E

F

Двійково-восьмерична таблиця

2-ва

000

001

010

011

100

101

110

111

8-на

0

1

2

3

4

5

6

7

Завдання

  1. Переведіть в десяткову систему числення:

а) 100011102; б) 123458; в) AA02D34B16.

  1. Порівняйте два числа:

а) 10268 та 21616; б) 111112 та 111113.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]