1. Целое положительное число F7F8140(16) записывается следующим образом:
F7F8140(16) = F • 166 +7 • 165 + F • 164 +8 • 163 + 1 • 162 +4•161 +0 •160.
2. Смешанное число А0,5Е(16) имеет вид: А0, 5Е(16) = 10 • 161 + 0 • 160 + 5 •16-1 + 14• 16-2.
3. Дробное число 0,ABC имеет вид: 0,ABC16 = 10 • 16-1 + 11 • 16-2 + 12 • 16-3.
Шестнадцатеричные цифры и их десятичные эквиваленты даны в табл. 2.4.
Полезно помнить некоторые степени шестнадцати –табл.2.5
Таблица 2.4- Шестнадцатеричные цифры и их эквиваленты | Таблица 2.5 - Степени числа16 | |||||||||
Основание систем счисления | ||||||||||
16n | n | 16-n | ||||||||
0001 0000 | 1.0 | |||||||||
0001 0001 | 0.0625 | |||||||||
0001 0010 | 0.00390625 | |||||||||
0001 0011 | 0.000244140625 | |||||||||
0001 0100 | 0.0000152587890625 | |||||||||
0001 0101 | 0.00000095367431640625 | |||||||||
0001 0110 | 0,0000000059604644775390625 | |||||||||
0001 0111 | ||||||||||
0001 1000 | ||||||||||
0001 1001 | ||||||||||
A | 0001 1010 | 1A | ||||||||
B | 0001 1011 | 1B | ||||||||
C | 0001 1100 | 1C | ||||||||
D | 0001 1101 | 1D | ||||||||
E | 0001 1110 | 1E | ||||||||
F | 0001 1111 | 1F | ||||||||
Преобразование шестнадцатеричного числа в двоичное происходит так:
|
|
7F816 = 0111 1111 10002,
7 F 8
Обратное преобразование двоичного числа в шестнадцатеричное происходит следующим образом. Двоичное число разбивается на тетрады (4 разряда) и каждая тетрада заменяется эквивалентом 16-ричного числа.
Число 0111 1111 1000(2) = 7F8(16) .
Восьмеричная система счисления
Восьмеричная система счисления применяется для выполнения вспомогательных функций, кодирования адресов и команд, сокращения записи числовой информации и обеспечивания простоты перевода в двоичную систему, поскольку любая восьмеричная цифра легко заменяется двоичным трехразрядным числом –триадой. Для этого сначала составляют программу в восьмеричной системе, а затем переводят её в двоичную систему, которую и вводят в вычислительную машину.
Данная СС имеет набор из 8 цифр { 0, 1, 2, 3, 4, 5, 6, 7 }, т.е. основание системы р = 8.
По формуле (2.2) восьмеричное число можно представить так:
А8 = an 8n + an-1 8n-1 + an-2 8n-2 + … + a1 81 + a0 80 + a-1 8-1 + a-2 8-2 + a-m 8-m |
Примеры.
1. Целое положительное число 740(8) записывается следующим образом:
740(8) = 7 • 82 +4•81 +0 •8°.
2. Смешанное число 10,7(8) имеет вид: 0,7(8) = 1 • 81 + 0 • 8° + 7 •8-1.
3. Дробное число 0,263 имеет вид: 0,263(8) = 2 • 8-1 + 6 • 8-2 + 3 • 8-3.
|
|
Восьмеричные цифры и их десятичные эквиваленты даны в табл. 2.6.
Полезно помнить некоторые степени восьми –табл.2.7
Таблица 2.6- Восьмеричные цифры и их эквиваленты | Таблица 2.7-Степени восьми | ||||||||
Основание системы счисления | |||||||||
8n | n | 8-n | |||||||
000 000 | 010 000 | 1.0 | |||||||
000 001 | 010 001 | 0.015625 | |||||||
000 010 | 010 010 | 0.001953125 | |||||||
000 011 | 010 011 | 0.000244140625 | |||||||
000 100 | 010 100 | 0.000030517578125 | |||||||
000 101 | 010 101 | ||||||||
000 110 | 010 110 | ||||||||
000 111 | 010 111 | ||||||||
001 000 | 011 000 | ||||||||
001 001 | 011 001 | ||||||||
001 010 | 011 010 | ||||||||
001 011 | 011 011 | ||||||||
001 100 | 011 100 | ||||||||
001 101 | 011 101 | ||||||||
001 110 | 011 110 | ||||||||
001 111 | 011 111 |
Преобразование восьмеричного числа в двоичное происходит следующим образом: каждая восьмеричная цифра заменяется её трехразрядным (триада) двоичным эквивалентом.
Пример: 7408 = 111 100 0002,
7 4 0
Обратное преобразование двоичного числа в восьмеричное происходит в обратной последовательности: двоичное число разбивается на триады (3 разряда двоичного числа) и каждая триада заменяется эквивалентом 8-ричного числа.
Пример: Число 011 111 101 000(2) = 3750(8)
Контрольные вопросы.
1. Дать определение системы счисления. Назвать и охарактеризовать свойства СС.
2. Какие символы используются для записи чисел в двоичной СС? Восьмеричной? Шестнадцатеричной?
3. Чему равны веса разрядов слева от точки, разделяющих целую и дробную части, в разных СС.
4. Чему равны веса разрядов справа от точки, разделяющих целую и дробную части, в разных СС.
5. Преобразуйте следующие десятичные числа в двоичные: 0, 1, 18, 25, 128.
6. Преобразуйте следующие десятичные числа в восьмеричные: 0, 1, 18, 25, 128.
7. Преобразуйте следующие десятичные числа в шестнадцатеричные: 0, 1, 18, 25, 128.
8. Дешифрируйте следующие двоичные числа, преобразовав их в десятичные: 0010, 1011, 11101, 0111, 0101.
9. Дешифрируйте следующие восьмеричные числа, преобразовав их в десятичные: 777, 375, 111, 1015.
10. Дешифрируйте следующие шестнадцатеричные числа, преобразовав их в десятичные: 15, А6, 1F5, 63.
2.3 Перевод целых и дробных чисел из одной системы счисления в другую |
В процессе тестирования и отладки программ программисту часто требуется перевести число из одной системы счисления в другую. Рассмотрим сначала перевод целых чисел в удобную систему счисления. Для человека такой системой счисления является, привычная для него, десятичная СС, а для машины — двоичная.