Декодер Hex
Мгновенное преобразование между шестнадцатеричным форматом и текстом. Поддержка настраиваемых разделителей и префиксов. Вся обработка выполняется в вашем браузере.
Настройки
Как использовать декодер Hex
Выберите направление
Выберите режим преобразования Hex в текст или Текст в Hex.
Введите данные
Вставьте hex-строку или обычный текст в зависимости от выбранного режима.
Настройте и преобразуйте
Настройте разделитель и префикс, затем скопируйте результат.
Что такое шестнадцатеричная система?
Шестнадцатеричная система счисления (с основанием 16) использует цифры 0-9 и буквы A-F. В информатике hex обычно используется для представления двоичных данных, значений байтов, адресов памяти и цветовых кодов. Каждый hex-байт (две hex-цифры) представляет один байт (8 бит) данных.
Частые применения
Цветовые коды
CSS-цвета, такие как #FF5733, представляют значения RGB в hex
Двоичные данные
Представление необработанных байтов в читаемом формате
Адреса памяти
Адреса расположения в компьютерной памяти
Краткая таблица Hex ↔ ASCII
Самые нужные значения ASCII при чтении и записи hex. Печатные ASCII-символы идут от 0x20 (пробел) до 0x7E (тильда); байты ниже 0x20 — управляющие.
| Символ | Hex | Десятичное | Значение |
|---|---|---|---|
| NUL | 0x00 | 0 | Нулевой байт — терминатор строк в C |
| TAB | 0x09 | 9 | Горизонтальная табуляция |
| LF | 0x0A | 10 | Перевод строки (\n) |
| CR | 0x0D | 13 | Возврат каретки (\r) |
| (space) | 0x20 | 32 | Пробел |
| 0–9 | 0x30–0x39 | 48–57 | Цифры от 0 до 9 |
| A–Z | 0x41–0x5A | 65–90 | Прописные буквы A–Z |
| a–z | 0x61–0x7A | 97–122 | Строчные буквы a–z |
| DEL | 0x7F | 127 | Управляющий символ Delete |
Правило, которое стоит запомнить: цифры начинаются с 0x30, прописные буквы — с 0x41, строчные — с 0x61, ровно на 0x20 выше прописных. Поэтому установка бита 0x20 меняет регистр ASCII-буквы.
Префиксы hex: 0x, \x и #
Один и тот же hex-байт встречается с разными префиксами в зависимости от контекста. Значение у всех трёх одно и то же — префикс лишь соглашение языка:
0x
0x — литерал в программировании
C, C++, Java, JavaScript, Python и Go записывают шестнадцатеричные числа с префиксом 0x: 0x1F, 0xFF, 0xDEADBEEF. Адреса памяти и значения байтов в документации и hex-дампах почти всегда используют 0x.
\x
\x — escape в строках
Внутри строк и регулярных выражений \xNN означает байт со значением NN: "\x48\x65\x6C\x6C\x6F" — это "Hello". Python и JavaScript также поддерживают \uXXXX для кодпоинтов Unicode (4 hex-цифры) — см. Unicode Decoder.
#
# — цвета
CSS и дизайнерские инструменты записывают RGB-цвета как #RRGGBB: #FF5733 — это rgb(255, 87, 51). Каждая пара hex-цифр — один байт канала. В URL другая конвенция — %-кодирование %XX — её разбирает URL-декодер.
Часто задаваемые вопросы
Вы можете выбрать пробел (48 65 6C 6C 6F), двоеточие (48:65:6C:6C:6F) или без разделителя (48656C6C6F). Декодер автоматически определяет формат.
Да. Инструмент корректно кодирует и декодирует многобайтовые символы UTF-8, преобразуя каждый байт в его hex-представление.
Да. Вы можете переключать префикс вывода между 0x, \x, # или без префикса. Декодер также принимает ввод с любым из этих префиксов.
Это соглашения из разных языков, обозначающие одни и те же hex-значения. 0x — префикс числового литерала в C, Java, JavaScript и Python (0xFF). \x — строковый escape одного байта ("\x41" — это "A"). # используется для RGB-цветов в CSS (#FF5733).
Hex-дамп показывает каждый байт двумя hex-цифрами, обычно по 16 байтов в строке, со смещением (адресом) слева и ASCII-представлением справа. Точки в ASCII-колонке означают непечатные байты. Удобно потренироваться на "Hello": 48 65 6C 6C 6F — H это 0x48, e это 0x65, каждая l это 0x6C, o это 0x6F.
Каждая hex-цифра соответствует ровно 4 битам: F = 1111, поэтому FF = 11111111 = 255. Для перевода в десятичную систему умножайте на степени 16 по разрядам: 1F = 1x16 + 15 = 31. Этот инструмент показывает десятичное значение каждого байта, а для многобайтовых последовательностей отображает текст UTF-8, в который декодируются эти байты.
Почти везде, где двоичные данные встречаются с человеком: коды цветов (#FF6600), MAC-адреса (00:1A:2B:3C:4D:5E), адреса памяти, хеши SHA-256, магические байты файлов (gzip-поток всегда начинается с 1F 8B) и файлы прошивок Intel HEX. Hex естественно подходит для двоичных данных, потому что один байт всегда занимает ровно две hex-цифры.
Основанию 16 нужны 16 символов для цифр, но арабские цифры дают только 10, поэтому значения 10-15 заимствуют буквы A-F (по соглашению регистр не имеет значения). Название объединяет hexa (шесть) и decimal (десять). Соответствие A=10 — F=15 универсально во всей вычислительной технике — альтернативных вариантов не существует.
Похожие инструменты
Декодер Unicode
Конвертация между Unicode-экранированием и читаемым текстом
Декодер Base64 и URL
Декодирование и кодирование Base64, парсинг URL-кодированных строк, предпросмотр изображений Base64 и декодирование сегментов заголовка или полезной нагрузки JWT
Декодер Gzip
Сжатие и распаковка данных с использованием Gzip и кодированием Base64
Авторитетные источники
Первоисточники, лежащие в основе этого инструмента, — официальные стандарты и спецификации, а не пересказы из вторых рук.