Декодируйте шестнадцатеричные байты в текст. Прочитайте строки из примеров, журналов и данных UTF8.
Как пользоваться
Вставьте полные пары цифр с пробелами или без. Допускаются шестнадцатеричные знаки и корректные байты UTF8.
Пример
48 69 даёт Hi. C3 A9 даёт é, поскольку эта буква занимает два байта UTF8.
Вопросы и ответы
Почему корректный hex не читается?
Правильные байты могут не образовывать текст UTF8. Для двоичных файлов и других кодировок нужен другой декодер.
Связанные инструменты
Практическая задача
Сначала уберите из журнала адреса смещений и подписи. 4f 4b читается как OK. Длинный дамп может содержать заголовки и двоичные данные, которые не являются сообщением.
Дополнительный вопрос
Нужен префикс 0x у каждого байта?
Нет. Вводите обычные пары цифр. Дополнительные префиксы и разделители кроме пробелов не входят в поддерживаемый формат.
Детали для проверки результата
| Деталь | Пояснение |
|---|---|
| Шестнадцатеричная запись | В шестнадцатеричной записи используются цифры от 0 до 9 и буквы от A до F. Регистр букв не меняет значение. Для чтения байтов как текста также нужна кодировка символов. |
| Полный байт | Байт хранит значение от 0 до 255. В двоичной записи нужны восемь цифр, в шестнадцатеричной две. Начальные нули сохраняют полную ширину и не должны пропадать при копировании. |
| Байты UTF8 | UTF8 записывает символы байтами. Базовая латиница занимает один байт на букву, многие другие знаки занимают больше. Число байтов не равно числу видимых символов. |
| Кодовые точки | Кодовая точка Unicode обозначает символ или его часть. Буква и отдельный комбинируемый акцент содержат две точки, даже если на экране видна одна буква с ударением. |
| Кодирование и шифрование | Кодирование меняет представление данных для чтения другой системой и не требует секретного ключа. Шифрование защищает сведения ключом, а хеширование создаёт отпечаток для другой задачи. |
| Внешне одинаковый текст | Две строки могут выглядеть одинаково, но иметь разные последовательности Unicode. Буква с акцентом бывает цельным знаком или сочетанием. Внешнее сходство не доказывает равенство байтов. |
| Концы строк | Перенос может быть записан как LF или CRLF. В редакторе они выглядят похоже, но состоят из разных знаков. Побайтовое сравнение и хеш зависят от записи, включая последний перенос. |
| Двоичная запись | Двоичная система использует только 0 и 1. Сохраняйте границы байтов при проверке текста. Потерянная цифра сдвигает дальнейшие биты: похожая на код строка может оказаться некорректной. |
| Размер Base64 | Base64 обычно записывает три исходных байта четырьмя видимыми знаками. Неполная последняя группа дополняется. Поэтому результат обычно длиннее исходных байтов: это не сжатие. |