СРС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)
   триади    тетради
0 01

2

3

4

5

6

000001

010

011

100

101

110

111 

01

2

3

4

5

6

7

8

01

2

3

4

5

6

7

8

9

A

B

C

D

E

00000001

0010

0011

0100

0101

0110

0111

1000

1001

1010

1011

1100

1101

1110

1111 


 

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

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

Приклад.

а) Перевести 10101101.1012“10” с.ч.

Тут і надалі при одночасному використанні декількох різних систем числення основу системи, до якої належить число, будемо вказувати у вигляді нижнього індексу.

10101101.1012 = 127+ 026+ 125+ 024+ 123+ 122+ 021+ 120+ 12-1+ 02-2+ 12-3 =  173.62510

б) Перевести 703.048“10” с.ч.

703.048 = 782+ 081+ 380+ 08-1+ 48-2 = 451.062510

в) Перевести B2E.416“10” с.ч.

B2E.416 =  11162+ 2161+ 14160+ 416-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 

00=001=0

10=0

11=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.

 

 


  翻译: