BIN 轉 HEX 轉換器
將 application/octet-stream 原始二進位位元組串流轉換為文字型態的 Intel HEX 記憶體紀錄,讓微控制器程式設計師能夠準確燒錄硬體韌體。
格式比較與技術規格
| 規格 | BIN | HEX |
|---|---|---|
| MIME 類型 | application/ | text/ |
| 類型 | 原始二進位位元組串流 | 十六進位記憶體記錄 |
| 壓縮 | 無 | 無 |
| 標準規格 | 原始二進位位元組串流規格 | Intel HEX-32 物件格式 |
| 檔案簽章(magic bytes)標頭 | Raw arbitrary binary bytes | :[0-9A-Fa-f]{8} (Intel HEX colon record format) |
格式概述與應用
嵌入式系統工程師與硬體開發人員經常將原始記憶體傾印轉換為 Intel HEX 格式,以便將軟體載入至 PIC、AVR 與 8051 等晶片的微控制器中。原始二進位檔案只儲存原始機器指令,不包含任何位址對應。除非知道特定的記憶體目的地位址,否則微控制器程式設計師無法讀取原始二進位傾印。Intel HEX 格式透過將二進位資料封裝成可讀的 ASCII 文字行,解決了這個問題。每一行都包含記憶體位址、資料長度、紀錄類型與用來偵測資料錯誤的檢查碼等特定欄位。快閃記憶體程式設計師與硬體除錯工具依賴這種結構,將位元組放置在晶片上的正確記憶體位置。
技術規格與編解碼器解析
原始二進位 (BIN) 檔案使用 MIME 類型 application/octet-stream,由一連串未格式化的位元組組成,沒有任何檔案簽章(magic bytes)標頭、中繼資料或容器結構。Intel HEX (HEX) 檔案使用 MIME 類型 text/plain,將這些相同的二進位位元組編碼為十六進位 ASCII 文字列。這兩種格式皆未採用內部壓縮,這代表轉換過程是完全無損的。機器碼的每一個位元組都會從原始串流直接對應到 Intel HEX 紀錄結構內的十六進位字元對。
作業系統與瀏覽器相容性
Intel HEX 檔案適用於任何作業系統,因為它們是純文字檔案。您可以在 Windows、macOS 與 Linux 的文字編輯器中開啟並編輯它們。專門的嵌入式開發工具(例如 MPLAB、AVRDUDE 與 Keil uVision)原生支援讀取 Intel HEX 檔案來為微控制器編寫程式。現代網頁瀏覽器也可以使用 JavaScript FileReader API 在本機處理這些文字轉換,不需要上傳至伺服器。
實用資訊
在將原始二進位檔案轉換為 Intel HEX 之前,請務必先驗證起始記憶體位址偏移量。如果您的目標微控制器預期程式碼從記憶體位址 0x0000 開始,請確保您的轉換工具正確對齊資料,以防發生開機失敗。
常見問題
如何在不失真的情況下將原始二進位轉換為 Intel HEX?
原始二進位 (BIN) 檔案使用 MIME 類型 application/octet-stream,由一連串未格式化的位元組組成,沒有任何檔案簽章(magic bytes)標頭、中繼資料或容器結構。Intel HEX (HEX) 檔案使用 MIME 類型 text/plain,將這些相同的二進位位元組編碼為十六進位 ASCII 文字列。這兩種格式皆未採用內部壓縮,這代表轉換過程是完全無損的。機器碼的每一個位元組都會從原始串流直接對應到 Intel HEX 紀錄結構內的十六進位字元對。
原始二進位與 Intel HEX 有什麼區別?
原始二進位是緊湊、未格式化的原始位元組串流,不包含位址資訊。Intel HEX 是以文字為基礎的格式,將這些相同的位元組組織成可讀的 ASCII 行,其中包含起始位址、位元組計數與錯誤檢查用的檢查碼。