Велика розрядність запису числа у двійковій СЧ зумовлює використання вісімкової і шістнадцяткової СЧ які мають компактну форму подання чисел.
Правило 1.
СЧ з основою 8 – двійкове число поділяють на групи біт, по 3 у кожній, починаючи з молодших розрядів для цілої частини і зі старших розрядів для дробової частини числа.
Приклад.
Двійкове число 111100010(2) перевести у вісімкову СЧ.
4 2 1
(111)(100)(010) = 742(8)
7 4 2
Відповідь: 111100010(2) = 742(8)
Приклад.
1000,0011(2)
(001)(011),(001)(100)(2)
1 3 1 4
1000,0011(2) = 13,14(8)
Правило 2.
В СЧ з основою 16 двійкове число поділяють на групи по 4 біта у кожній, починаючи з молодших розрядів для цілої частини і зі старших розрядів для дробової частини числа. При цьому для подання цифр в розрядах використовуються десяткові цифри 0…9 і букви A…F.
Десяткові числа | Еквіваленти | ||
Двійкові
8 4 2 1 |
Вісімкові | Шістнадцяткові | |
0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1/2 1/4 1/8 7/8 3/8 1/16 5/16 1/32 1/64 3*1/8 4*1/2 |
0000
0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 10000 10001 10010 0,1 0,01 0,001 0,111 0,011 0,0001 0,0101 0,00001 0,000001 11,001 100,1 |
0
1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20 21 22 0,4 0,2 0,1 0,7 0,3 0,04 0,24 0,02 0,01 3,1 4,4 |
0
1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 0,8 0,4 0,2 0,E 0,6 0,1 0,5 0,08 0,04 3,2 4,8 |
64 8 1 1/8 1/64
82 81 80 8-1 8-2
8 4 2 1 1/2 1/4 1/8
23 22 21 20 2-1 2-2 2-3
16 1 1/16 1/256
162 161 160 16-1 16-2
Приклад.
Перевести двійкове число 010111111001(2) у шістнадцяткову СЧ.
(0101)(1111)(1001)(2)
5 F 9
010111111001(2) = 5F9(16)
Відповідь: 010111111001(2) = 5F9.
Правило 1.
Для переведення числа із СЧ з основою 2i, де i = 1, 2, 3, …, у двійкову СЧ достатньо подати кожну цифру числа двійковим і розрядним числом.
Правило 2.
Для зворотного переведення необхідно запис двійкового числа поділити на групи на групи по i – розрядів, починаючи з молодших розрядів для цілої частини числа і зі старших розрядів дробової частини числа. Двійкові значення групи відповідають.
Арифметичні операції.
1. Двійкове додавання.
Перший доданок + другий доданок = Перенос + Результат
0 + 0 = 0 + 0 (00)
0 + 1 = 0 + 1 (01)
1 + 0 = 0 + 1 (01)
1 + 1 = 1 + 0 (10)
Приклад:
01010011
+
00111000
10001011
2. Двійкове віднімання.
Двійкове віднімання можна виконати додаванням доповняльного коду від’ємника до зменшуваного. Двійкове доповнення – додавання одиниці до зворотного коду числа. Зворотній код отримують в процесі інвертування значень розрядів двійкового числа.
Приклад:
39(10)
–
26(10)
13(10)
00100111 зменшуване
–
00011010 від’ємник
00001101 різниця
Від’ємник 00011010
(прямий код)
Зворотній код 11100101 00100111
Доповняльний код + 1 +
11100110 11100110
100001101
↑
Перенос, який означає, що результат є додатній.
Правило 1.
Відсутність переносу при відніманні означає, що результат має від’ємний знак і представляє собою доповняльний код.
Правило 2.
Для отримання абсолютного значення (прямий код) від’ємного числа за його доповняльним кодом необхідно: створити зворотній код (інвертування) і додати одиницю.
Приклад:
Визначити число за доповняльним кодом.
11111011 =>00000100
+ 1
5<=00000101