BINをHEXに変換

application/octet-stream形式の生バイナリバイトストリームを、テキストベースのIntel HEXメモリレコードに変換し、マイクロコントローラのハードウェアファームウェアを正確にフラッシュできるようにします。

ファイルを選択するか、ここにドロップしてください

プライベート - ファイルがデバイスの外に出ることはありません

または貼り付け Ctrl+V

ファイルを待つ間、Code Rainで遊べます

ネットワーク送信ゼロのプライバシー保証: 外部サーバーへのデータ送信は0バイトです。すべての処理はお使いのブラウザのサンドボックス内でローカルに実行されます。

フォーマットの比較と技術仕様

仕様BINHEX
MIMEタイプapplication/octet-streamtext/plain
タイプ未加工のバイナリバイトストリーム16進メモリレコード
圧縮なしなし
標準仕様生バイナリバイトストリーム仕様書Intel HEX-32 オブジェクト形式
マジックバイトヘッダーRaw arbitrary binary bytes:[0-9A-Fa-f]{8} (Intel HEX colon record format)

フォーマットの概要と用途

組み込みシステムエンジニアやハードウェア開発者は、PIC、AVR、8051などのチップにソフトウェアをロードするために、メモリーダンプをIntel HEX形式へ頻繁に変換します。生バイナリファイルは、アドレスマッピングを持たずに機械語命令をそのまま格納するため、宛先メモリの絶対アドレスが不明な状態ではプログラマが読み取ることができません。 Intel HEX形式はこの問題を解決し、バイナリデータを読み取り可能なASCIIテキスト行にパッケージ化します。各行には、メモリアドレス、データ長、レコードタイプ、エラー検出用のチェックサムが含まれています。フラッシュプログラマやハードウェアデバッグツールは、この構造を利用してチップ上の正しいメモリ位置にバイトを配置します。

技術仕様とコーデックの詳細

生バイナリ(BIN)ファイルはapplication/octet-streamのMIMEタイプを使用し、マジックバイトヘッダーやメタデータ、コンテナ構造を持たない、未フォーマットのバイトの連続ストリームです。Intel HEX(HEX)ファイルはtext/plainのMIMEタイプを使用し、同じバイナリバイトを16進数のASCIIテキスト行にエンコードします。どちらの形式も内部圧縮を使用しないため、相互変換は完全にロスレス(可逆)です。機械語コードのすべてのバイトは、生ストリームからIntel HEXレコード構造内の16進文字ペアに直接マッピングされます。

OSとブラウザの互換性

Intel HEXファイルはプレーンテキストドキュメントであるため、あらゆるオペレーティングシステムで動作します。Windows、macOS、Linuxのテキストエディタで開き、編集することができます。MPLAB、AVRDUDE、Keil uVisionなどの専門的な組み込み開発ツールは、Intel HEXファイルをネイティブに読み込んでマイクロコントローラをプログラムします。また、最新のWebブラウザであれば、サーバーへのアップロードを必要とせず、JavaScriptのFileReader APIを使用してローカルでテキスト変換を処理できます。

役立つ情報

生バイナリファイルをIntel HEXに変換する前に、開始メモリアドレスのオフセットを必ず確認してください。対象のマイクロコントローラがメモリアドレス0x0000からコードが始まることを想定している場合は、起動失敗を防ぐため、変換ツールでデータが正しく配置されていることを確認してください。

よくある質問

品質を落とさずに生バイナリをIntel HEXに変換するにはどうすればよいですか?

生バイナリ(BIN)ファイルはapplication/octet-streamのMIMEタイプを使用し、マジックバイトヘッダーやメタデータ、コンテナ構造を持たない、未フォーマットのバイトの連続ストリームです。Intel HEX(HEX)ファイルはtext/plainのMIMEタイプを使用し、同じバイナリバイトを16進数のASCIIテキスト行にエンコードします。どちらの形式も内部圧縮を使用しないため、相互変換は完全にロスレス(可逆)です。機械語コードのすべてのバイトは、生ストリームからIntel HEXレコード構造内の16進文字ペアに直接マッピングされます。

生バイナリとIntel HEXの違いは何ですか?

生バイナリは、アドレス情報を持たないコンパクトで未フォーマットのバイトストリームです。Intel HEXは、開始アドレス、バイト数、エラーチェック用のチェックサムを含む、読みやすいASCII行に同じバイトを整理するテキストベースの形式です。