Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Бичков - Основи сучасного програмування.doc
Скачиваний:
69
Добавлен:
07.03.2016
Размер:
2.67 Mб
Скачать

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

Для переходу від двійкової системи до десяткової зручно скористатися підсумовуванням за степенями двійки. Наприклад:

(10100)2  1  24  0  23  1  22  0  21  0  20  16  4  (20)10.

У загальному вигляді, при некратних основах, переведення додатних чисел із системи з основою р у систему з основою s зводиться до виконання такого алгоритму:

 поділ цілої та дробової частин числа в системі з основою р;

 послідовне цілочисельне ділення із залишком цілої частини й цілих часток, що утворяться, на основу нової системи s числення доти, доки частка не стане менше цієї основи;

 запис цілої частини числа в новій системі числення, причому в старший розряд записується остання частка, а потім послідовно, у зворотному порядку, – отримані залишки;

 послідовне множення дробової частини числа і дробових частин добутків, що утворюються, на основу нової системи s числення доти, доки не будуть отримані цілий добуток або необхідна кількість цифр для запису дробу у системі з основою s (або не буде виявлений період);

 запис дробової частини числа в новій системі числення, причому записуються всі отримані цілі частини добутків так, щоб остання ціла частина потрапила в молодший розряд, а перша – у старший;

 об'єднання цілої і дробової частин у новій системі числення за допомогою запису в потрібному місці десяткової крапки.

При виконанні множення та ділення основа нової системи числення s записується цифрами вихідної системи числення р. Таким чином, зворотний перехід здійснюється шляхом послідовного ділення на основу системи, наприклад на число 2.

Переведемо число 20, записане в десятковій системі числення, у двійкову:

20

2

20

10

2

0

10

5

2

0

5

2

2

1

2

1

2

0

0

0

1

У результаті дістанемо двійкове число (20)10  (10100)2. Аналогічно здійснюється перехід з десяткової у вісімкову і шістнадцяткову системи числення.

Існує простіший спосіб переведення десяткових чисел у двійкову форму. Для переведення десяткового числа X у двійкову форму необхідно знайти найближчий до цього числа менший степінь двійки, тобто знайти таке щоі віднятивід числапри цьому до старшого розряду записується одиниця. Далі розглядається числоякщо воно більше отриманого залишку, то до наступного розряду записується 0, а якщо менше, то воно віднімається від залишку, утворюючи новий залишок, і до наступного розряду записується 1. Потім розглядається степіньі т. д. Процес продовжується, доки у залишку не виявиться нуль або не буде отримана необхідна кількість значущих цифр числа. Для дробових чисел крапка ставиться після двійки в нульовому степені, перед від'ємними степенями. Наприклад, переведемо число10.5:

23  8. 8  10.5

– записуємо 1 у старший розряд і 10.5 – 8  2.5;

22  4.4  2.5

– записуємо в наступний розряд 0;

21  2.2  2.5

– записуємо в наступний розряд 1 і 2.5 – 2  0.5;

20  1.1  0.5

– записуємо в наступний розряд 0;

2–1  0.5

– записуємо в наступний розряд 1 і 0.5 – 0.5  0.