- •Розділ 1. Теоретичні основи інформатики
- •1.1. Основні поняття
- •1.2. Історія обчислювальної техніки
- •1.3. Системи числення
- •1.3.1. Непозиційні системи числення
- •1.3.2. Позиційні системи числення
- •1.3.3. Шістнадцяткова система числення
- •1.3.4. Двійкова і вісімкова системи числення
- •1.3.5. Перехід від десяткової до інших систем числення
- •1.3.6. Перехід від двійкової до вісімкової і шістнадцяткової систем
- •1.3.7. Причини використання двійкової системи числення в комп’ютерах
1.3.5. Перехід від десяткової до інших систем числення
Досі ми переходили від заданої системи числення до десяткової, а зараз розглянемо, як знайти запис поданого десяткового числа у будь-якій довільній системі числення. Якщо число ціле, то його потрібно послідовно ділити на основу системи доти, доки частка не стане меншою ніж основа. Залишки, що будуть отримані у процесі ділення записані у зворотному порядку, починаючи з останньої частки, і будуть шуканим записом. Наведемо приклади.
Знайти запис цілого числа (125)10 у шістнадцятковій системі:
-
-
12516
112
7
13
тобто (125)10= (7D)16 .
Знайти запис числа (100)10 у двійковій системі числення:
тобто (100)10 = (1100100)2 .
Щоб перевести десятковий дріб в іншу систему, треба застосовувати дещо інший алгоритм. Сутність алгоритму покажемо на прикладі.
Знайти запис числа (0,847)10 у двійковій системі числення:
0,847 |
|
|
|
×2 |
|
|
|
1,694→ |
0.694 |
|
|
|
×2 |
|
|
|
1,388→ |
0,388 |
|
|
|
×2 |
|
|
|
0,776→ |
0,776 |
|
|
|
×2 |
|
|
|
1,552 |
Випишемо отримані частки у прямому порядку – це і буде шуканий запис: (0,847)10 = (0, 1101)2
Дії з двійковими числами. Основні дії з двійковими числами виконують з урахуванням таблиць додавання, віднімання, множення.
Таблиця 1.2. Основні дії з двійковими числами
Додавання |
Віднімання |
Множення |
0+0=0 |
0-0=0 |
0×0=0 |
0+1=1 |
1-0=1 |
1×0=0 |
1+0=1 |
0-1=0 |
0×1=0 |
1+1=10 |
10-1=1 |
1×1=1 |
Приклад 1. Обчислити суму чисел 5 та 3, заздалегідь перевівши їх у двійкову систему числення. (5)10=101; (3)10=11.
Додавання |
Віднімання |
1
+ 11
1000
|
- 11
10 |
1.3.6. Перехід від двійкової до вісімкової і шістнадцяткової систем
Для переводу цілого числа з двійкової системи до вісімкової його попередньо треба розбити на тріади, а потім кожну тріаду замінити відповідною цифрою вісімкової системи:
(1000111010101) 2
1 000 111 010 101
1 0 7 2 5
(10725) 8
Щоб перейти до шістнадцяткової системи треба зробити так само, тільки ділити потрібно не на тріади, а на тетради, і замінювати їх шістнадцятковою цифрою:
(1000111010101) 2
1 0001 1101 0101
1 1 D 5
(11D5)16
Цілком очевидно, що діючи у зворотному порядку, можна переходити від вісімкової і шістнадцяткової системи до двійкової. Такий суто механічний перехід є можливим завдяки тому, що основи цих систем мають спільне кратне 2. Якщо порівняти записи одного і того ж числа в різних системах, то зрозуміло, що шістнадцяткова система є більш економною щодо кількості використованих символів і це є перевагою перед двійковою системою.
Приклад 2. Нехай модем передає інформацію зі швидкістю 2400 бод. Для передачі одного символу тексту потрібно передати близько 10 бітів. Таким чином, модем здатний за 1 секунду передати близько 2400/10 = 240 символів.
Приклад 3. Скільки біт достатньо для того, щоб закодувати всі букви англійського алфавіту та цифри від 0 до 9?
При визначенні кількості різноманітних комбінацій, використовуємо формулу: 2N = кількість комбінацій, де N – це кількість біт, а основа 2 обумовлена двійковою системою числення, тобто наявністю лише двох значень (0 та 1).
Англійський алфавіт містить 26 букв + 10 цифр від 0 до 9. тобто комбінацій має бути 36. Тоді 2х ≥ 36. Таким чином х = 6.