Перевод между двоичной и шестнадцатеричной системами
Двоичная и шестнадцатеричная системы счисления связаны особенно удобно: одна шестнадцатеричная цифра точно соответствует группе из четырёх двоичных разрядов. Поэтому перевод выполняют не через десятичную систему, а простой заменой тетрад — групп по четыре цифры.
Почему используются группы по төрт разряда
В двоичной системе используются цифры 0 и 1, а в шестнадцатеричной — цифры 0–9 и латинские буквы A–F. Основание шестнадцатеричной системы равно 16, а \(16=2^4\). Это означает, что четырёх двоичных разрядов достаточно, чтобы записать любую шестнадцатеричную цифру: от \(0000_2\) до \(1111_2\).
Тетрада — группа из четырёх двоичных разрядов. Каждой тетраде соответствует одна шестнадцатеричная цифра. Подробнее о таблице соответствий см. на странице «Тетрада».
| Двоичная тетрада | Десятичное значение | Шестнадцатеричная цифра |
|---|---|---|
| 0000 | 0 | 0 |
| 0001 | 1 | 1 |
| 0010 | 2 | 2 |
| 0011 | 3 | 3 |
| 0100 | 4 | 4 |
| 0101 | 5 | 5 |
| 0110 | 6 | 6 |
| 0111 | 7 | 7 |
| 1000 | 8 | 8 |
| 1001 | 9 | 9 |
| 1010 | 10 | A |
| 1011 | 11 | B |
| 1100 | 12 | C |
| 1101 | 13 | D |
| 1110 | 14 | E |
| 1111 | 15 | F |
Запомните соответствия для значений от 10 до 15: \(1010_2=A_{16}\), \(1011_2=B_{16}\), \(1100_2=C_{16}\), \(1101_2=D_{16}\), \(1110_2=E_{16}\), \(1111_2=F_{16}\). Для цифр 0–9 достаточно обычного совпадения.
Перевод из двоичной системы в шестнадцатеричную
Чтобы перевести целое двоичное число, действуйте справа налево. Разделите запись на группы по четыре разряда, начиная с последней цифры. Если в самой левой группе не хватает разрядов, добавьте слева нули. Затем замените каждую тетраду одной шестнадцатеричной цифрой.
- Отделите двоичную жазба на группы по төрт разряда справа налево.
- Дополните крайнюю левую группу нулями до төрт цифр, если это необходимо.
- Для каждой группы найдите соответствующую цифру в таблице.
- Запишите найденные цифры подряд и при необходимости укажите основание системы.
При переводе целого двоичного числа в шестнадцатеричную систему группируют разряды справа налево. Нули добавляют только слева от числа: они не изменяют его значение.
Переведём \(11010110_2\). Группы уже составлены: \(1101\ 0110\). По таблице \(1101=D\), а \(0110=6\). Поэтому \(11010110_2=D6_{16}\).
Как записать число \(101111_2\) в шестнадцатеричной системе?
Перевод из шестнадцатеричной системы в двоичную
Обратный перевод ещё проще: каждую шестнадцатеричную цифру заменяют её четырёхразрядным двоичным кодом. Внутри числа группы не объединяют и не переставляют. После замены можно убрать нули в начале всей записи, но нули внутри числа и в конце дробной части сохраняются по правилам записи.
- Запишите шестнадцатеричное число по цифрам.
- Замените каждую цифру тетрадой из таблицы.
- Соедините тетрады без пробелов.
- Для целого числа при необходимости уберите начальные нули.
Каждая шестнадцатеричная цифра заменяется ровно четырьмя двоичными разрядами. Например, \(A_{16}=1010_2\), а \(F_{16}=1111_2\).
Рассмотрим число \(3A7_{16}\). Цифра 3 превращается в \(0011\), A — в \(1010\), 7 — в \(0111\). Получаем \(0011\ 1010\ 0111_2\). Начальные нули можно удалить: \(3A7_{16}=1110100111_2\).
Разобранный пример экзаменационного типа
Пусть требуется перевести число \(1011010011110101_2\) в шестнадцатеричную систему, а затем выполнить обратную проверку. Число имеет длину 16 разрядов, поэтому оно сразу делится на четыре тетрады.
Показать Шешім Шешім
Проверка обратным переводом: \(B\to1011\), \(4\to0100\), \(F\to1111\), \(5\to0101\). Получается исходная жазба \(1011010011110101_2\), значит перевод выполнен дұрыс.
1. Группировка слева направо вместо справа налево при переводе целого числа. 2. Добавление нулей справа: это изменяет число. 3. Запись букв A–F в нижнем регистре или путаница между \(B=11\) и \(8\). 4. Пропуск ведущих нулей внутри тетрады: цифра 4 должна превращаться в \(0100\), а не в \(100\). 5. Перестановка групп после замены.
Двоичные дроби и жазба разрядов
Для двоичных дробей правило сохраняется, но границы групп располагаются по обе стороны от двоичной запятой. Целую часть группируют справа налево, а дробную — слева направо. Если в последней дробной группе не хватает разрядов, нули добавляют справа. Например, \(101,11_2=0101,1100_2=5,C_{16}\).
Слева от запятой нули дописывают слева, справа от запятой — справа. Это связано с тем, что целая и дробная части имеют разные веса разрядов.
Для дробных чисел, которые переводят между десятичной и двоичной системами, применяются другие приёмы, например перевод дробей умножением. Здесь же уже имеющуюся двоичную жазба достаточно разбить на тетрады.
Связь с другими системами и заданиями
Тот же принцип работает для восьмеричной системы, но там используются группы по три разряда, потому что \(8=2^3\). Этот способ рассмотрен на странице перевода между двоичной и восьмеричной системами, а сами группы из трёх разрядов называются триадами.
В экзаменационных заданиях перевод может быть частью более длинной цепочки: сначала число переводят из десятичной системы, затем представляют в двоичной или шестнадцатеричной. Для первого шага полезны страницы перевод из десятичной системы и последовательность остатков. Проверять результат можно через перевод в десятичную систему.
Quick-test
Проверьте себя
Главное
- Шестнадцатеричная цифра соответствует четырём двоичным разрядам, потому что \(16=2^4\).
- Целую двоичную жазба группируют справа налево; недостающие разряды дополняют нулями слева.
- При обратном переводе каждую шестнадцатеричную цифру заменяют четырёхразрядной тетрадой.
- Для дробей целую часть группируют справа налево, а дробную — слева направо; нули добавляют с соответствующей стороны.
- Тексеру результат можно обратной заменой или переводом в десятичную систему.