СРС1 > Системи числення
Статьи по теме
Тема: Системи числення, позиційні та непозиційні системи числення, перевід чисел з однієї системи чисел в іншу.
Теорія
1. Основні поняття й визначення
Під системою числення розуміється спосіб представлення любого числа за допомогою деякого алфавіту символів, що називаються цифрами.
Всі системи числення діляться на позиційні і непозиційні.
Непозиційними системами є такі системи числення, в яких кожний символ зберігає своє значення незалежно від місця його положення в числі.
Прикладом непозиційної системи числення являється римська система. До недоліків таких систем відносяться наявність великої кількості знаків та складність виконання арифметичних операцій.
Система числення називається позиційною, якщо одна і та ж сама цифра має різне значення, що визначається позицією цифри в послідовності цифр, що зображає число. Це значення змінюється в однозначній залежності від позиції, яку займає цифра, по деякому закону.
Прикладом позиційної системи числення являється десятикова система, що використовується у повсякденному житті.
Кількість p різних цифр, що використовуються в позиційній системі визначає назву системи числення і називається основам системи числення – “p”.
В десятковій системі використовуються десять цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; ця система має основу число десять.
Будь-яке число N в позиційній системі числення с основам p може бути представлено в вигляді полінома від основи p:
N = anpn+an-1pn-1+ … +a1p+a0+a-1p-1+a-2p-2+ …
тут N – число, aj – коефіцієнти (цифри числа), p – основа системи числення (p>1).
Прийнято представляти числа у вигляді послідовності цифр:
N = anan-1 … a1a0 . a-1a-2 …
У цій послідовності точка відділяє цілу частину числа від дробової (коефіцієнти при позитивних ступенях, включаючи нуль, від коефіцієнтів при негативних ступенях). Точка опускається, якщо немає негативних ступенів (число ціле).
У ЕОМ застосовують позиційні системи чисельно з недесятковою основою: двійкову, вісімкову, шістнадцяткову.
В апаратній основі ЕОМ лежать двопозиційні елементи, які можуть перебувати лише в двох станах, один з них позначається 0, а інший – 1. Тому основною системою, що використовується в ЕОМ є двійкова система.
Двійкова система числення. Використовується дві цифри: 0 і 1. В двійковій системі будь-яке число може бути представлено у вигляді:N = bnbn-1 … b1b0 . b-1b-2 …
де bj або 0, або 1.
Вісімкова система числення. Використовується вісім цифр: 0, 1, 2, 3, 4, 5, 6, 7. Вживається в ЕОМ як допоміжна для запису інформації в скороченому вигляді. Для подання однієї цифри у вісімковій системі використовується три двійкових розряди (тріада) (Таблиця 1).
Шістнадцяткова система числення. Для зображення чисел вживаються 16 цифр. Перші десять цифр цієї системи позначаються цифрами від 0 до 9, а старші шість цифр – латинськими літерами: 10-A, 11-B, 12-C, 13-D, 14-E, 15-F. Шістнадцяткова система використовується для запису інформації в скороченому вигляді. Для подання однієї цифри у шістнадцятковій системи чисельно використовується чотири двійкових розряди (тетрада) (Таблиця 1).
Таблиця 1. Найбільш важливі системи числення.
Двійкова(Основа 2) | Вісімкова(Основа 8) | Десяткова(Основа 10) | Шістнадцяткова(Основа 16) | ||
триади | тетради | ||||
01 | 01
2 3 4 5 6 7 |
000001
010 011 100 101 110 111 |
01
2 3 4 5 6 7 8 9 |
01
2 3 4 5 6 7 8 9 A B C D E F |
00000001
0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 |
2. Перевід чисел з однієї системи чисел в іншу
Перевід чисел в десяткову систему здійснюється шляхом складання степеневого ряду з основою тієї системи, з якої число переводиться. Потім підраховується значення суми.
Приклад.
а) Перевести 10101101.1012“10” с.ч.
Тут і надалі при одночасному використанні декількох різних систем числення основу системи, до якої належить число, будемо вказувати у вигляді нижнього індексу.
10101101.1012 = 127+ 0
26+ 1
25+ 0
24+ 1
23+ 1
22+ 0
21+ 1
20+ 1
2-1+ 0
2-2+ 1
2-3 = 173.62510
б) Перевести 703.048“10” с.ч.
703.048 = 782+ 0
81+ 3
80+ 0
8-1+ 4
8-2 = 451.062510
в) Перевести B2E.416“10” с.ч.
B2E.416 = 11162+ 2
161+ 14
160+ 4
16-1 = 2862.2510
Перевід цілих десяткових чисел в недесяткову систему числення здійснюється послідовним розподілом десяткового числа на основі тієї системи, в яку воно переводиться, до тих пір, поки не вийде частка менше цієї основи. Число у новій системі записується у вигляді залишків ділення, починаючи з останнього.
Приклад.
а) Перевести 18110“8” с.ч.
Результат: 18110 = 2658
б) Перевести 62210“16” с.ч.
Результат: 62210 = 26E16
Перевід правильних дробів з десяткової системи числення в недесяткову.
Для переводу правильного десяткового дробу в іншу систему, цей дріб треба послідовно помножати на основу тієї системи, в яку вона переводиться. При цьому множаться тільки дробові частини. Дріб в новій системі записується у вигляді цілих частин добутків, починаючи з першого.
Приклад.
Перевести 0.312510“8” с.ч.
Результат: 0.312510 = 0.248
Зауваження. Кінцевому десятковому дробу в іншій системі числення може відповідати нескінченний (іноді періодичний) дріб. У цьому випадку кількість знаків у поданні дробу в новій системі береться в залежності від необхідної точності.
Приклад.
Перевести 0.6510“2” с.ч. Точність 6 знаків.
Результат: 0.6510 0.10(1001)2
Для переводу неправильного десяткового дробу в систему числення з недесятковою основою необхідно окремо перевести цілу частину й окремо дробову.
Приклад.
Перевести 23.12510“2” с.ч.
1) Переведемо цілу частину: | 2) Переведемо дробову частину: |
![]() |
![]() |
Таким чином: 2310 = 101112; 0.12510 = 0.0012.
Результат: 23.12510 = 10111.0012.
Необхідно відмітити, що цілі числа залишаються цілими, а правильні дроби – дробами в будь-якій системі числення.
Для переводу вісімкового або шістнадцяткового числа в двійкову форму достатньо замінити кожну цифру цього числа відповідним трьохрозрядним двійковим числом (триадою) (Таб. 1) або чотирьохрозрядним двійковим числом (тетрадою) (Таб. 1), при цьому відкидають непотрібні нулі в старших та молодших розрядах.
Приклад.
а) Перевести 305.48“2” с.ч.
б) Перевести 7B2.E16“2” с.ч.
Для переходу із двійкової до вісімкової (шістнадцяткової) системи поступають таким чином: рухаючись від точки вліво і вправо, розбивають двійкове число на групи по три (чотири) розряди, доповнюючи при необхідності нулями крайні ліву і праву групи. Потім тріаду (тетраду) замінюють відповідною вісімковою (шістнадцятковою) цифрою.
Приклад.
а) Перевести 1101111001.11012“8” с.ч.
б) Перевести 11111111011.1001112“16” с.ч.
Перевід з вісімкової в шістнадцяткову систему і назад здійснюється через двійкову систему за допомогою тріад і тетрад.
Приклад. Перевести 175.248“16” с.ч.
Результат: 175.248 = 7D.516.
3. Двійкова арифметика
Правила виконання арифметичних дій над двійковими числами задаються таблицями двійкових додавання, віднімання та множення.
Таблиця двійкового складання | Таблиця двійкового віднімання | Таблиця двійкового множення |
0+0=00+1=1
1+0=1 1+1=10 |
0-0=01-0=1
1-1=0 10-1=1 |
0![]() ![]() 1 1 |
При додаванні двійкових чисел в кожному розряді проводиться складання цифр доданків і перенесення з сусіднього молодшого розряду, якщо він є. При цьому необхідно враховувати, що 1+1 дають нуль в даному розряді і одиницю перенесення в наступний.
Приклад. Виконати складання двійкових чисел:
а) X=1101, Y=101;
Результат 1101+101=10010.
б) X=1101, Y=101, Z=111;
Результат 1101+101+111=11001.
При відніманні двійкових чисел в даному розряді при необхідності займається 1 з старшого розряду. Ця запозичена 1 дорівнює двом 1 даного розряду
Приклад. Задані двійкові числа X=10010 й Y=101. Обчислити X-Y.
Результат 10010 – 101=1101.
Множення двійкових чисел виконується по тем же правилам, що й для десяткових за допомогою таблиць двійкового множення і складання.
Приклад. 1001101=?
Результат 1001101=101101.
Ділення двійкових чисел здійснюється за тими ж правилами, що і для десяткових. При цьому використовуються таблиці двійкового множення і віднімання.
Приклад. 1100.011 : 10.01=?
Результат 1100.011 : 10.01=101.1.
Варіанти завдань
I. Перевести наступні числа в десяткову систему числення:
1) 1101112; 2) 10110111.10112; 3) 563.448; 4) 721.358; 5) 1C4.A16; 6) 9A2F.B516;
7) 10100101.10112; 8) 536.428; 9) 9B21.B416; 10) 1101012; 11) 1101012; 12) 10110111.10012; 13) 635.448; 14) 217.358; 15) 1CF.A16; 16) 9A2A.B516; 17) 10110101.10112; 18) 546.228; 19) 19BF1.B416; 20) 1111012; 21) 10110101.10012; 22) 645.018; 23) 226.358; 24) ACF.A16; 25) 1001012.
II. Перевести наступні числа из “10” с.ч. в “2”, “8”, “16” с.ч.:
1) 1209; 2) 362; 3) 3925; 4) 11355; 5) 463; 6) 1902; 7) 236; 8) 2392; 9) 12353; 10) 563; 11)1210; 12) 352; 13) 3825; 14) 11153; 15) 365; 16) 1812; 17) 123; 18) 2412; 19) 10235;
20) 163; 21) 1009; 22) 4362; 23) 3815; 24) 10135; 25) 2463.
III. Перевести наступні числа з “10” с.ч. в “2”, “8”, “16” с.ч. (точність обчислень – 5 знаків після крапки):
1) 0.345; 2) 0.225; 3) 0.725; 4) 217.375; 5) 31.2375; 6) 725.03125; 7) 8846.04; 8) 0.0526; 9) 0.543; 10) 0.0605; 11) 0.305; 12) 0.205; 13) 0.705; 14) 207.385; 15) 30.2125; 16) 715.03005; 17) 8146.04; 18) 0.1526; 19) 0.553; 20) 0.0515; 21) 0.235; 22) 0.2225; 23) 0.8725; 24) 317.475; 25) 0.06025.
IV. Перевести наступні числа в двійкову систему числення:
0) 1725.3268; 1) 341.348; 2) 7BF.52A16; 3) 3D2.C16; 4) 1275.2368; 5) 434.438; 6) 7FFB.51B16; 7) 2D3.C16 ; 8) 2172.268; 9) 6FB.25A16; 10) 1625.3168; 11) 351.248;12) 7BC.51A16;13) 3ED2.C16; 14) 1335.2468; 15) 444.418; 16) 7EFB.52B16; 17) 2DC3.C16 ; 18) 2052.468; 19) 6AF.25A16; 20) 1115.3268; 21) 355.248; 22) 77F.51A16; 23) 4D1.1C16; 24) 1027.2468; 25) 1888.3458.
V. Перевести наступні числа з однієї системи числення в іншу:
1) 1011110.11012 “8” с.ч.; 2) 1101111101.01011012
“16” с.ч.;
3) 110101000.1001012 “16” с.ч.; 4) 110110001.010112
“8” с.ч.;
5) 10110110.11012 “8” с.ч.; 6) 110111101.01011012
“16” с.ч.;
7) 11010100.1001012 “16” с.ч. ; 8) 110111101.01011012
“16” с.ч.;
9) 11011000.1001012 “16” с.ч.; 10) 11001001.010012
“8” с.ч.;
11) 1011010.10012 “8” с.ч.; 12) 1101101101.0101012
“16” с.ч.;
13) 110001000.1000012 “16” с.ч.; 14) 110110101.010112
“8” с.ч.;
15) 10111110.10012 “8” с.ч.; 16) 110110101.01001012
“16” с.ч.;
17) 11011100.1011012 “16” с.ч. ; 18) 110101101.01001012
“16” с.ч.;
19) 11011001.1011012 “16” с.ч. 20) 10011001.010112
“8” с.ч.;
21) 1010110.101012 “8” с.ч.; 22) 1101111001.0101012
“16” с.ч.;
23) 111101000.1011012 “16” с.ч.; 24) 110110101.011112
“8” с.ч.;
25) 11011101.011112 “8” с.ч..
VI. Перевести наступні числа з однієї системи числення в іншу:
1) 51.438 “16” с.ч.; 2) 5B.F16
“8” с.ч.; 3) D4.1916
“8” с.ч.
4) 122.78 “16” с.ч.; 5) 61.318
“16” с.ч.; 6) 6C.F16
“8” с.ч.;
7) E4.1816 “8” с.ч.; 8) 132.68
“16” с.ч.; 9) 55.308
“16” с.ч.;
10) 342.68 “16” с.ч.; 11) 52.348
“16” с.ч.; 12) 5A.A16
“8” с.ч.;
13) B4.0916 “8” с.ч.; 14) 111.68
“16” с.ч.; 15) 71.518
“16” с.ч.;
16) 6F.C16 “8” с.ч.; 17) C4.2816
“8” с.ч.; 18) 432.58
“16” с.ч.;
19) 515.318 “16” с.ч.; 20) 441.68
“16” с.ч.; 21) 152.448
“16” с.ч.;
22) 5C.A16 “8” с.ч.; 23) BB.0916
“8” с.ч.; 24) 123.68
“16” с.ч.;
25) 671.528 “16” с.ч.
VII. Задані двійкові числа X й Y. Обрахуйте X+Y та X-Y , якщо:
1) X=101111110; Y=1011001; 2) X=101110110; Y=10111001;
3) X=100011001; Y=101011; 4) X=1001001; Y=101011;
5) X=101010110; Y=10101001; 6) X=101011001; Y=100011;
7) X=1101101; Y=101101; 8) X=101100110; Y=10110001;
9) X=110011001; Y=101111; 10) X=1101001; Y=101111;
11) X=100111110; Y=1010001; 12) X=101111110; Y=10101001;
13) X=101011001; Y=101111; 14) X=1011001; Y=101001;
15) X=101110110; Y=10101101; 16) X=101011011; Y=100001;
17) X=1111101; Y=101111; 18) X=101110110; Y=10100001;
19) X=110010001; Y=101011; 20) X=1101101; Y=101101;
21) X=101110110; Y=1001001; 22) X=101111110; Y=10101001;
23) X=100011101; Y=101001; 24) X=1101001; Y=101111;
25) X=111010110; Y=10111001.
VIII. Задані двійкові числа X та Y. Обрахуйте X*Y й X/Y , якщо:
1) X=110010101; Y=1001;
2) X=100101.011; Y=110.1;
3) X=100000.1101; Y=101.01;
4) X=1011010011; Y=101.1;
5) X=110110101; Y=1101;
6) X=100101.001; Y=110.1;
7) X=100100.1101; Y=101.01;
8) X=1100110011; Y=10.11;
9) X=110011101; Y=10.01;
10) X=1000011011; Y=1001;
11) X=111010101; Y=1011;
12) X=101101.011; Y=110.01;
13) X=100100.1101; Y=111.01;
14) X=1011110011; Y=100.1;
15) X=111110101; Y=1001;
16) X=101101.001; Y=110.01;
17) X=100100.1001; Y=101.1;
18) X=1100110111; Y=10.1;
19) X=110101101; Y=10.01.
20) X=1001010011; Y=1001;
21) X=110011111; Y=1101;
22) X=100101.001; Y=100.1;
23) X=100100.1101; Y=101.11;
24) X=1011011011; Y=101.01;
25) X=110111101; Y=1101.