Содержание
Шестнадцатеричная система счисления записывает числа шестнадцатью цифрами: от 0 до 9 и буквами от A до F. Одна такая цифра заменяет ровно четыре двоичных. Поэтому её используют как короткую запись для длинных цепочек битов: компьютер по-прежнему хранит нули и единицы, а человек видит запись вчетверо короче.
Зачем нужна ещё одна система
Попробуйте продиктовать другу по телефону число 1111101011001110. Скорее всего, один из Вас собьётся уже на середине. Двоичная запись удобна машине, но не человеку: она длинная и однообразная.
Десятичная запись того же числа — 64 206 — короче, но по ней не видно, какие биты равны единице. А программисту часто важны именно биты.
Шестнадцатеричная запись решает обе задачи. То же число выглядит как FACE: четыре знака вместо шестнадцати, и каждый знак точно соответствует своей четвёрке битов.
Шестнадцать цифр
Чтобы считать шестнадцатью цифрами, обычных десяти не хватает. Недостающие шесть взяли из латинского алфавита.
| Десятичное | Двоичное | Шестнадцатеричное |
|---|---|---|
| 0 | 0000 | 0 |
| 1 | 0001 | 1 |
| 2 | 0010 | 2 |
| 3 | 0011 | 3 |
| 4 | 0100 | 4 |
| 5 | 0101 | 5 |
| 6 | 0110 | 6 |
| 7 | 0111 | 7 |
| 8 | 1000 | 8 |
| 9 | 1001 | 9 |
| 10 | 1010 | A |
| 11 | 1011 | B |
| 12 | 1100 | C |
| 13 | 1101 | D |
| 14 | 1110 | E |
| 15 | 1111 | F |
Буквы здесь — не буквы, а цифры: A означает десять, F — пятнадцать. После F цифры заканчиваются, поэтому следующее число записывается как 10 — «один-ноль», то есть шестнадцать.
Чтобы отличать системы, пишут основание внизу — 2F₁₆ — или ставят перед числом 0x: 0x2F. Второй способ принят в языках программирования. Большие и маленькие буквы равноправны: ff и FF — одно число.
Из двоичной записи в шестнадцатеричную и обратно
Здесь не нужно ничего вычислять — достаточно таблицы выше.
Из двоичной в шестнадцатеричную. Разбейте запись на четвёрки справа налево и замените каждую четвёрку одной цифрой.
1011 0110
B 6 10110110₂ = B6₁₆
Если слева осталось меньше четырёх цифр, допишите нули: 110101₂ — это 0011 0101, то есть 35₁₆.
Из шестнадцатеричной в двоичную. Замените каждую цифру её четвёркой битов.
3 F
0011 1111 3F₁₆ = 00111111₂
Восемь битов всегда записываются двумя шестнадцатеричными цифрами: от 00 до FF. Это очень удобно, потому что восемь битов — байт — основная единица памяти компьютера.
Из шестнадцатеричной записи в десятичную
Система позиционная, только веса разрядов растут в шестнадцать раз: 1, 16, 256, 4096. Умножаем каждую цифру на вес её разряда и складываем.
2F₁₆ = 2 · 16 + 15 · 1 = 47
1A3₁₆ = 1 · 256 + 10 · 16 + 3 · 1 = 419
Обратный перевод похож на двоичный: делим число на 16 и читаем остатки снизу вверх. Переведём 419.
419 : 16 = 26, остаток 3
26 : 16 = 1, остаток 10 → A
1 : 16 = 0, остаток 1
Снизу вверх: 1A3.
Где встречается шестнадцатеричная запись
Цвета. Цвет на экране складывается из трёх составляющих: красной, зелёной и синей. Яркость каждой — число от 0 до 255, то есть один байт. Три байта записывают шестью шестнадцатеричными цифрами после знака #.
| Код | Красный | Зелёный | Синий | Цвет |
|---|---|---|---|---|
#FF0000 | 255 | 0 | 0 | красный |
#00FF00 | 0 | 255 | 0 | зелёный |
#FFFFFF | 255 | 255 | 255 | белый |
#000000 | 0 | 0 | 0 | чёрный |
#F8CA73 | 248 | 202 | 115 | фирменный жёлтый цвет Marcus |
Проверим последнюю строку: F8 = 15 · 16 + 8 = 248, CA = 12 · 16 + 10 = 202, 73 = 7 · 16 + 3 = 115.
Адреса устройств в сети. У каждой сетевой карты есть номер из шести байтов — MAC-адрес. Его пишут шестью парами цифр: 02:1A:7D:5B:E0:3C.
Коды символов. У каждого знака есть номер в общей таблице символов. Латинская A — это U+0041, а смайлик 😀 — U+1F600.
Сообщения об ошибках. Коды вроде 0x80070005 в окне с ошибкой — это обычные числа, записанные коротко.
Восьмеричная система
Тот же приём работает с тройками битов. Три бита дают восемь сочетаний, поэтому их можно заменить одной цифрой от 0 до 7. Получается восьмеричная система.
111 101 101
7 5 5 111101101₂ = 755₈
Сегодня она встречается редко. Самый известный пример — права доступа к файлам в Linux: запись 755 означает три тройки битов, по одной для владельца, группы и всех остальных.
Частые ошибки
- Читают
10₁₆как десять. Это шестнадцать. Десять записывается цифройA. - Разбивают на четвёрки слева направо. Начинать нужно справа, иначе неполная группа окажется не с той стороны.
- Забывают нули при переводе в двоичную. Цифра
3— это0011, а не11: каждая цифра всегда даёт ровно четыре бита. - Считают, что запись с буквами — это текст.
FACEиBADмогут быть обычными числами.
Коротко
- В шестнадцатеричной системе шестнадцать цифр: 0–9 и A–F, где A = 10, а F = 15.
- Одна шестнадцатеричная цифра равна четырём битам, две цифры — одному байту.
- Перевод между двоичной и шестнадцатеричной записью делается заменой четвёрок по таблице.
- Веса разрядов — 1, 16, 256, 4096.
- Шестнадцатеричную запись используют для цветов, адресов, кодов символов и ошибок.
Мы научились записывать числа так, как их хранит компьютер. Дальше разберёмся, как из тех же нулей и единиц получаются текст, картинки и звук, — начиная с урока Байты, килобайты и гигабайты.
Использованная литература
- Шестнадцатеричная система счисления — Википедия [Электронный ресурс]. — URL: https://ru.wikipedia.org/wiki/Шестнадцатеричная_система_счисления (дата обращения: 09.10.2026).
- Цвета в CSS: шестнадцатеричная запись — MDN [Электронный ресурс]. — URL: https://developer.mozilla.org/ru/docs/Web/CSS/hex-color (дата обращения: 09.10.2026).