June 04, 2007

RubyによるHEXフォーマットの読み書き

組込み系の開発をしているとROMにデータを書き込むためのバイナリを扱うことになりますが、そのフォーマットの一つにHEXフォーマット(正式名称?)というのがあります。バイナリを0からFまでの16進文字で表したものなのですが、モトローラ仕様とインテル仕様、2つのものがあります。その相互変換をしたいなと思ったのですが、せっかくなのでRubyで組んでみることにしました。

hex_binary_format.rbライブラリを公開します。使い方はHexBinaryFormat.readとHexBinaryFormat.writeを適当に呼べばなんとかなる(笑)と思います。

参考にしたのは、Googleで『HEXフォーマット』をキーワードに検索して引っかかった『HEXファイルフォーマット』『ROM化ファイルについて』のページです。作成にあたってはRubyのArrayを活用していますが、インデックスが現在のサイズを超えている場合に自動的にnilで埋めてくれる機能が非常に便利でした。

C++でHEX形式を読み込むローダを作ったりもしています。

00:02 fenrir が投稿 : 固定リンク | | このエントリーを含むはてなブックマーク | トラックバック
このエントリーのトラックバックURL: https://fenrir.naruoka.org/mt/mt-tb.cgi/570
コメント

私のこのページ見て、SH用のSファイルフォーマットのプログラムダウンローダ作った事があります(^^;
よくまとめられていていいですよね。

Posted by: まや : June 4, 2007 10:04 AM

>まやさん
参考にしているところは皆同じってことですね(笑)

Posted by: fenrir : June 5, 2007 12:33 AM
コメントする









名前、アドレスを登録しますか?
(次回以降コメント入力が楽になります)
  • 匿名でのコメントは受け付けておりません。
  • 名前(ハンドル名可)とメールアドレスは必ず入力してください。
  • メールアドレスを表示されたくないときはURLも必ず記入してください。
  • コメント欄でHTMLタグは使用できません。
  • コメント本文に日本語(全角文字)がある程度多く含まれている必要があります。
  • コメント欄内のURLと思われる文字列は自動的にリンクに変換されます。