Преобразование шестнадцатеричной системы счисления в двоичную и обратно
Автор: Ермолов К. А.
Октябрь 2019 года.
Все цифровые устройства, включая компьютер или телефон, используют в своей работе двоичную систему счисления, поскольку это наиболее простая система счисления, требующая только два электрических состояния – высокий уровень напряжения и низкий уровень. Поэтому для программирования таких устройств часто требуется использовать двоичную систему счисления. Однако, числа, записанные в двоичной системе слишком громоздкие, поскольку содержат много разрядов. В связи с этим программисты часто используют другую систему счисления с более компактной записью чисел - шестнадцатеричную. Эта система счисления очень легко преобразуется в двоичную и обратно. Рассмотрим следующую таблицу. В ней представлены соответствия десятичных, шестнадцатеричных и двоичных чисел. Для написания двоичных чисел в таблице используется 4 разряда. Очевидно, что нули в начале числа не влияют на его значение. Нас особенно интересует соответствие шестнадцатеричных и двоичных чисел.
Десятичное число | Шестнадцатеричное число | Двоичное число |
---|---|---|
0 | 0 | 0 |
1 | 1 | 1 |
2 | 2 | 10 |
3 | 3 | 11 |
4 | 4 | 100 |
5 | 5 | 101 |
6 | 6 | 110 |
7 | 7 | 111 |
8 | 8 | 1000 |
9 | 9 | 1001 |
10 | A | 1010 |
11 | B | 1011 |
12 | C | 1100 |
13 | D | 1101 |
14 | E | 1110 |
15 | F | 1111 |
16 | 10 | 10000 |
Например, шестнадцатеричному числу D соответствует двоичное 1101, а числу 3 соответствует число 0011. Чтобы преобразовать шестнадцатеричное число в двоичное, достаточно вместо каждой цифры шестнадцатеричного числа подставить двоичное число из таблицы.
Пример: преобразуем шестнадцатеричное число 9A3E в двоичную форму: для этого вместо 9 запишем 1001, вместо A – 1010, вместо 3 – 0011 и вместо E – 1110, получается 1001101000111110.

Для обратного преобразования из двоичной в шестнадцатеричную систему счисления применяется аналогичный метод: необходимо разбить двоичное число по 4 цифры, начиная с младшего разряда и каждой четверке цифр найти соответствующую шестнадцатеричную цифру в таблице. Если количество цифр в числе не кратно 4, то нужно в начало числа добавить недостающее количество нулей.
Пример: дано двоичное число 10110010110110 необходимо преобразовать его в шестнадцатеричную форму. В этом числе 14 цифр. 14 не делится на 4, поэтому в начало этого двоично числа добавим два нуля, чтобы общее количество цифр стало 16. Получилось 0010110010110110. Теперь разбиваем это число по 4 цифры: 0010 | 1100 | 1011 | 0110. Теперь для каждой четверки цифр находим соответствующую шестнадцатеричную цифру и записываем ее. Получаем: 2CB6.
