Шестнадцатеричные числа
Шестнадцатеричные числа в основании системы счисления имеют 16 символов, это числа от 0 до 9 и буквы английского алфавита от А до F:
16-ричное |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10-ричное |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Шестнадцатеричные числа всегда используются при отображении адресов и ссылок на память. Большие значения также можно выразить с помощью шестнадцатеричных чисел, используя всего несколько цифр, причем эти цифры легко преобразовать в двоичные значения. Шестнадцатеричные значения используются при написании программ для MASM и TASM. Для выделения шестнадцатеричных чисел используется буква «h» в конце числа. Например, 45h является шестнадцатеричным числом, тогда как 45 – десятичным.
Преобразование двоичных чисел в шестнадцатеричные
В таблице 2 показано соответствие двоичных чисел шестнадцатеричным цифрам. Большое двоичное число можно легко выразить с помощью шестнадцатеричных цифр.
Таблица 2. Соответствие двоичных и шестнадцатеричных чисел
-
Двоичное
Шестнадцетеричное
Двоичное
Шестнадцетеричное
0000
0
1000
8
0001
1
1001
9
0010
2
1010
A
0011
3
1011
B
0100
4
1100
C
0101
5
1101
D
0110
6
1110
E
0111
7
1111
F
Например, двоичное число 10101011100101111000011011100101 может быть легко представлено шестнадцатеричным значением АВ9786Е5:
А |
В |
9 |
7 |
8 |
6 |
Е |
5 |
1010 |
1011 |
1001 |
0111 |
1000 |
0110 |
1110 |
0101 |
Преобразовывать шестнадцатеричное число в двоичное также очень легко, поскольку существует взаимно-однозначное соответствие между шестнадцатеричной цифрой и четырьмя двоичными разрядами. Например:
-
8А2640=
1000
1010
0010
0110
0100
0000
8
А
2
6
4
0
Несколько примеров:
0AF6h = 0000101011110110
D58Ch = 1101010110001100
F13Bh = 1111000100111011
Преобразование шестнадцатеричныx чисел в десятичные
Каждая позиция цифры в шестнадцатеричном числе соответствует степени числа 16. Например:
24C2h = 2*163+4*162+12*161+2*160 = 8192+1024+192+2 = 9410
Преобразование десятичных чисел в шестнадцатеричные
Последовательное деление на 16. Необходимо осуществить первое деление, после чего необходимо с полученным частным снова произвести деление, а полученный результат снова разделить на 16 и т. д. Остаток от каждого деления будет очередной шестнадцатеричной цифрой. Пример:
Десятичное число 12 268:
15 268 / 16 = 954, остаток 4
954 / 16 = 59, остаток 10 (А)
59 / 16 = 3, остаток 11 (В)
3 / 16 = 0, остаток 3
-----------------------------------------------------
Шестнадцетеричное: 3ВА4
Числа со знаком
Двоичные числа могут быть как со знаком (signed), так и без знака (unsigned). Числа без знака используют все восемь битов для получения значения. Например, 11111111=255. Проссумировав значения всех битов, получим максимально возможное значение, которое может хранить байт без знака (255). Для слова без знака это значение будет составулять 65 535.