Конвертер двійкових даних (Raw Binary) в Intel HEX

Перетворення байтових потоків двійкового формату application/octet-stream на текстові записи пам'яті Intel HEX дозволяє програмістам мікроконтролерів точний запис мікропрограми у «залізо».

Виберіть або перетягніть файли

Виберіть або перетягніть файли сюди

100% приватна конвертація у браузері - файли ніколи не покидають ваш пристрій

або вставте Ctrl+V
Гарантія конфіденційності з нульовою передачею мережею: 0 байт завантажено на зовнішні сервери. Уся обробка виконується локально в пісочниці вашого браузера.

Порівняння форматів та технічні характеристики

СпецифікаціяBINHEX
MIME-типapplication/octet-streamtext/plain
Типraw binary byte streamhexadecimal memory record
Стисненняnonenone
Стандартна специфікаціяRaw Binary Byte Stream SpecificationIntel HEX-32 Object Format
Заголовок Magic BytesRaw arbitrary binary bytes:[0-9A-Fa-f]{8} (Intel HEX colon record format)

Огляд формату та застосування

Інженери вбудованих систем і розробники апаратного забезпечення часто перетворюють дампи пам'яті у формат Intel HEX для завантаження ПЗ на мікроконтролери рівня PIC, AVR та 8051. Двійкові файли зберігають лише необроблені машинні інструкції без будь-якого відображення адрес. Програмісти мікроконтролерів не можуть зчитати сирі двійкові дампи, якщо невідома конкретна цільова адреса пам'яті. Формат Intel HEX розв'язує цю проблему завдяки пакуванню двійкових даних у зрозумілі рядки тексту ASCII. Кожен рядок містить поля для адреси пам'яті, довжини даних, типу запису та контрольну суму для виявлення помилок. Програматори флеш-пам'яті та інструменти налагодження апаратного забезпечення спираються на цю структуру, щоб розміщувати байти за правильними адресами на чипі.

Технічні специфікації та розбір кодеків

Файли Raw Binary (BIN) використовують MIME-тип application/octet-stream і складаються з безперервного потоку неформатованих байтів без заголовків магічних байтів, метаданих чи структури контейнера. Файли Intel HEX (HEX) використовують MIME-тип text/plain та кодують ті самі байти у вигляді шістнадцяткових текстових рядків ASCII. Жоден із форматів не використовує внутрішнє стиснення, тому перетворення між ними є повністю без втрат. Кожен окремий байт машинного коду переноситься безпосередньо з потоку у пари шістнадцяткових символів усередині структури запису Intel HEX.

Сумісність з ОС та браузерами

Файли Intel HEX працюють на будь-якій операційній системі, оскільки вони є звичайними текстовими документами. Їх можна відкривати та редагувати в текстових редакторах на Windows, macOS і Linux. Спеціалізовані інструменти вбудованої розробки, такі як MPLAB, AVRDUDE та Keil uVision, нативно читають файли Intel HEX для програмування мікроконтролерів. Сучасні веббраузери також можуть локально обробляти ці текстові перетворення за допомогою JavaScript API FileReader без необхідності завантаження на сервер.

💡 Корисна інформація

Завжди перевіряйте зміщення початкової адреси пам'яті перед перетворенням файлу двійкових даних на Intel HEX. Якщо ваш цільовий мікроконтролер очікує початок коду з адреси 0x0000, переконайтеся, що інструмент конвертації правильно вирівнює дані, аби запобігти збоям завантаження.

Порівняння форматів та технічні характеристики

Стандартний файл мікропрограми мікроконтролера на 64 КБ є надзвичайно малим. Передача такого файлу Intel HEX займає менш як 0,01 секунди через мережу 4G, 5G або високошвидкісне оптоволокно.

Поширені запитання

Як конвертувати двійкові дані у формат Intel HEX без втрати якості?

Конвертація є на 100 відсотків без втрат, оскільки обидва формати зберігають сирі байтові дані без застосування алгоритмів стиснення. Кожна окрема інструкція у двійковому потоці точно переноситься у шістнадцяткові текстові записи вихідного файлу.

У чому різниця між Raw Binary та Intel HEX?

Raw Binary - це компактний неформатований потік сирих байтів без інформації про адреси. Intel HEX - текстовий формат, який організовує ті самі байти в читабельні рядки ASCII, що містять початкові адреси, кількість байтів і контрольні суми для перевірки помилок.