Intel hex オブジェクト ファイル フォーマット、Intel hex フォーマット、またはIntellec Hexは、バイナリ情報をASCIIテキスト形式で伝えるファイル フォーマットです。 [ 10 ]これにより、紙テープ、パンチ カードなどの非バイナリ メディアに保存したり、テキスト ターミナルに表示したり、ライン指向プリンタで印刷したりすることが可能になります。[ 11 ]このフォーマットは、マイクロコントローラ、EPROM、その他の種類のプログラマブル ロジック デバイスやハードウェア エミュレータのプログラミングによく使用されます。一般的なアプリケーションでは、コンパイラまたはアセンブラがプログラムのソース コード( C言語やアセンブリ言語など)をマシン コードに変換し、それを 16 進数 (またはバイナリ) フォーマットのオブジェクトファイルまたは実行可能ファイルに出力します。一部のアプリケーションでは、Intel hex フォーマットはストリーム データのパケットを保持するコンテナ フォーマットとしても使用されます。[ 12 ]結果として生成されるファイルに使用される一般的なファイル拡張子は .HEX [ 1 ]または .H86です。[ 5 ] [ 6 ] HEX ファイルはプログラマによって読み取られ、マシン コードをPROMに書き込むか、ロードおよび実行のためにターゲット システムに転送されます。[ 11 ] [ 13 ] 16 進数と 2 進数形式 (例: HEX2BIN )間でファイルを変換するさまざまなツールがあり、その逆 (例: OBJHEX、OH、OHX、BIN2HEX) もあります。
Intel hex フォーマットは、もともと1973 年にIntelのIntellec Microcomputer Development Systems [ 14 ] : 10–11 (MDS) 用に設計され、紙テープからプログラムをロードして実行するために使用されました。また、以前は効率の低いBNPF (Begin-Negative-Positive-Finish) フォーマットでエンコードする必要があったROM製造のために Intel にメモリの内容を指定するためにも使用されました[ 15 ]。[ 14 ] : 11 1973 年、インテルの「ソフトウェア グループ」は、ビル バイアリーとケネス バーゲットのみで構成され、ゲイリー キルダルは外部コンサルタントとしてMicrocomputer Applications Associates (MAA) として事業を行い、1974 年にDigital Researchを設立しました。 [ 16 ] [ 17 ] [ 18 ] [ 9 ] 1975 年以降、このフォーマットは、ファイル拡張子 HEX を使用するファイルをサポートするIntellec Series II ISIS-IIシステムでフロッピー ドライブをサポートするために使用されました。[ 19 ]多くのPROMおよびEPROMプログラミング デバイスはこのフォーマットを受け入れます。
Intel HEXは、改行文字またはキャリッジリターン文字、あるいはその両方で区切られたASCIIテキストの行で構成されます。各テキスト行には、複数のバイナリ数をエンコードする大文字の16進数文字が含まれています。バイナリ数は、行内の位置、行の種類、および長さに応じて、データ、メモリアドレス、またはその他の値を表す場合があります。各テキスト行はレコードと呼ばれます。
レコード(テキスト行)は、左から右に順番に表示される 6 つのフィールド(部分)で構成されています。[ 11 ]
視覚的な補助として、この記事全体を通して、Intel HEXレコードの各フィールドは以下のように色分けされています。
開始コードバイト数アドレスレコードタイプデータチェックサム
レコードのチェックサムバイトは、チェックサムの直前のレコード内のすべてのデコード済みバイト値の合計の最下位バイト(LSB)の2の補数です。これは、デコード済みバイト値を合計し、その合計(つまりデータチェックサム)の最下位バイト(LSB)を抽出し、次にその最下位バイト(LSB)の2の補数を計算することによって求められます(例えば、ビットを反転させて1を加えるなど)。
例えば、レコード「03 0030 00 02337A 1E」の場合、デコードされたバイト値の合計は03です。+00+30+00+02+33+7A= E2、そのLSB値は ですE2。 の2の補数E2は です。1E は、レコードの末尾に表示されるチェックサムバイトです。
レコードの有効性は、そのチェックサムを計算し、計算されたチェックサムがレコードに表示されているチェックサムと等しいことを確認することでチェックできます。チェックサムが異なる場合はエラーが示されます。レコードのチェックサムバイトはデータチェックサムの2の補数(つまり加法逆数)であるため、このプロセスは、レコードのチェックサムを含むすべてのデコードされたバイト値を合計し、その合計の最下位ビット(LSB)がゼロであることを確認することに簡略化できます。この方法を上記の例に適用すると、次の結果が得られます。03+00+30+00+02+33+7A+1E = 100、LSB値は です00。
Intel HEX レコードは通常、1 つ以上の ASCII 行末文字で区切られ、各レコードがテキスト行に単独で表示されます。これにより、レコードが視覚的に区切られることで可読性が向上し、また、マシン解析の効率を向上させるために使用できるレコード間のパディングも提供されます。ただし、行末文字はオプションであり、「:」はレコードの開始を検出するために使用されます。[ 15 ] [ 5 ] [ 24 ] [ 20 ] [ 21 ] [ 22 ] [ 23 ]
HEXレコードを作成するプログラムは、通常、オペレーティングシステムの慣例に準拠した行末文字を使用します。たとえば、Linuxプログラムは単一のLF(ラインフィード、16進数値0A)文字を使用して行を終了しますが、WindowsプログラムはCR(キャリッジリターン、16進数値0D)の後にLFを使用します。
Intel HEXには6つの標準レコードタイプがあります: [ 11 ]
バリアントには、他のレコードタイプも使用されています。06(「点滅」メッセージ/伝送プロトコルコンテナ)WayneとLayneによる[ 34 ]0A(ブロック開始)0B(ブロック終了)0℃(パディングされたデータ)0D(カスタムデータ)0E(その他のデータ)BBC / Micro:bit Educational Foundation、[ 35 ]および81(コードセグメント内のデータ)82(データセグメント内のデータ)83(スタックセグメント内のデータ)84(追加セグメント内のデータ)85(絶対コードセグメントの段落アドレス)86(絶対データセグメントの段落アドレス)87(絶対スタックセグメントの段落アドレス)88(絶対追加セグメントの段落アドレス)デジタルリサーチによる。[ 6 ] [ 20 ]
1973/1974年のオリジナルの4ビット/8ビットIntellec HexペーパーテープフォーマットとIntellec Hexコンピュータパンチカードフォーマットは、1種類のレコードタイプのみをサポートしていました。00[ 36 ] [ 37 ] [ 25 ]これは1975年頃に拡張され、レコードタイプもサポートするようになった。01[ 15 ]シンボリック 16 進フォーマットと呼ばれることもあり、[ 38 ]シンボリック デバッグ用のシンボル テーブルを含むオプションのヘッダーを含めることができ、[ 25 ] [ 28 ] [ 26 ] [ 9 ]レコード内のコロンより前のすべての文字は無視されます。[ 15 ] [ 5 ]
1978年頃、インテルは新しいレコードタイプを導入した。02そして03(当時新しかった8086 / 8088プロセッサのセグメント化されたアドレス空間のサポートを拡張Intellec Hexフォーマットに追加するため)。
特定のレコードタイプのサブセットを使用するHEXファイルのフォーマットを示すために、特別な名前が使用されることがあります。例:
この例は、4つのデータレコードの後にファイル終端レコードが続くファイルを示しています。
: 10 0100 00 214601360121470136007EFE09D21901 40 : 10 0110 00 2146017E17C20001FF5F160021480119 28 : 10 0120 00 194E79234623965778239EDA3F01B2CA A7 : 10 0130 00 3F0156702B5E712B722B732146013421 C7 : 00 0000 01FF
開始コードバイト数アドレスレコードタイプデータチェックサム
Intel独自の拡張機能に加えて、Digital Research(いわゆる「Digital Research hex format」[ 6 ] [ 20 ])、Zilog、Mostek、[ 29 ] [30]、 TDL、[ 30 ] [31]、 Texas Instruments、Microchip、[ 39 ] [ 40 ] 、 c't、Wayne and Layne、[ 34 ]、BBC / Micro:bit Educational Foundation (「Universal Hex Format」[35])など、いくつかのサードパーティもIntel hexフォーマットのバリアントと拡張機能を定義しています。これらには、プログラムのエントリポイントとレジスタの内容に関する情報、データフィールドのバイト順序の入れ替え、未使用領域のフィル値、ヒューズビット、その他の違いが含まれる場合があります。
8086 プロセッサ用の Digital Research の 16 進フォーマットは、コード、データ、スタック、および追加セグメントを区別するためのレコード タイプを追加することでセグメント情報をサポートしています。[ 5 ] [ 6 ] [ 20 ]
CP/M-80用のほとんどのアセンブラ(およびMotorola 6809用のXASM09 ) は、ファイルの終わりを示すためにレコード タイプ 01h を使用せず、代わりに長さゼロのデータ タイプ00h エントリを使用します。[ 41 ] [ 1 ]これにより、複数の 16 進ファイルの連結が容易になります。[ 42 ] [ 43 ] [ 1 ]
テキサス・インスツルメンツは、アドレスがバイトではなくプロセッサのレジスタのビット幅に基づいて決定される方式を定義している。
Microchip社は、PICマイクロコントローラ向けに、 INTHX8S [ 44 ] (INHX8L、[ 1 ] INHX8H [ 1 ] )、INHX8M、[ 44 ] [ 1 ] [ 45 ] INHX16 [ 44 ] (INHX16M [ 1 ] ) およびINHX32 [ 46 ]のバリアントを定義しています。
アルフレッド・アーノルドのクロスマクロアセンブラAS [ 1 ] 、ヴェルナー・ヘニッヒ=ロレフの8051エミュレータSIM51 [ 26 ]、マティアス・R・ポールのクロスコンバータBINTEL [ 47 ]も、Intel hexフォーマットの拡張を定義していることが知られています。
[…] PIC マイクロコントローラの場合、スイッチ -m <0..3> を使用すると、Intel Hex フォーマットの 3 つの異なるバリアントを生成できます。フォーマット 0 は INHX8M で、すべてのバイトが Lo-Hi-Order で含まれています。 PICはワード指向のアドレス空間を持ち、アドレスはワードごとに1ずつしか増加しないため、アドレスは2倍の大きさになります。 […] フォーマット1(INHX16M)では、バイトは自然な順序で格納されます。これは、マイクロチップが自社のプログラミングデバイスで使用しているフォーマットです。フォーマット2(INHX8L)または3(INHX8H)では、ワードが下位バイトまたは上位バイトに分割されます。 […] 残念ながら、Intel-Hexファイルの最終行については、文献によって異なる記述が見られます。そのため、P2HEXは選択可能な3つの異なるバリアントを認識します。 […] :00000001FF […] :00000001 […] :0000000000 […] デフォルトでは、最も一般的なバリアント0が使用されます。 […] ターゲットファイル名に拡張子がない場合は、拡張子はHEXであると想定されます。 […]
TI-gang プログラマーは .int、.hex、.a43 ファイル形式を必要としています。
デフォルトでは、このモードは拡張子が .a90、.hex、.a43、または .ihx のファイルに対して有効になっています。
[…] 以下はASM-86からの出力のみです。 81 00と同じ、データは
コードセグメント
に属します[…] 82 00と同じ、データは
データセグメント
に属します[…] 83 00と同じ、データは
スタックセグメント
に属します[…] 84 00と同じ、データは
エクストラセグメント
に属します[…] 85絶対コードセグメントの
パラグラフアドレス
[…] 86 絶対データセグメントのパラグラフアドレス […] 87 絶対スタックセグメントのパラグラフアドレス […] 88 絶対エクストラセグメントのパラグラフアドレス […] 各レコードのコロンより前の文字はすべて無視されます。 […]
(17ページ)
[…]
Intelフォーマットは、 Intel が
8086
用に定義したフォーマットと同一です
。Digital
Researchフォーマットは、Intel フォーマットとほぼ同じですが、16 進レコードにセグメント情報が追加されます。どちらのフォーマットの出力も
GENCMD
に入力できます
が、Digital Research フォーマットはセグメント識別を自動的に提供します。セグメントは、再配置可能なプログラムの最小単位です。 […] Digital Researchの16進数形式がIntelの形式と異なるのは、レコードタイプ00と02の定義においてです。Intelはデータレコードタイプとセグメントアドレスタイプそれぞれに1つの値を定義しています。Digital Researchは各レコードを、それを含むセグメントで識別します。 […] 8086のすべてのセグメントに属するデータの場合は00H […]
CODEセグメントに属するデータの場合は81H […]
DATAセグメント
に属するデータの場合は82H […]
STACKセグメント
に属するデータの場合は83H […]
EXTRAセグメント
に属するデータの場合
は84H […] すべてのセグメントアドレスレコードの場合は02H […] CODEの絶対セグメントアドレスの場合は85H […] DATAセグメントアドレスの場合は86H […] STACKセグメントアドレスの場合は87H […] EXTRAセグメントアドレスの場合は88H […]
(1+viii+122+2ページ)
[…]
Intel
HEX ファイル形式には、「データ バイト」以外にも多くのものを含めることができます。行がコロン (":") で始まらない限り、必要なものは何でも含めることができます。 […] かつて大きな HEX ファイルを見たことがあります […] そのファイルには、最初に
PL/M
プログラムのソース コードがあり、最後に PL/M コンパイラによって生成された結果の HEX ファイルが続いていました。 […] 別の HEX ファイルには、最初でも最後でもなく、複数の行の「絶対レコード」を区切る複数のコメント行が含まれていました。 […] それは「(Intel) 8008 シミュレータ
」
からのものでした。そのため、使用開始当初は、HEX ファイルに説明を含めることができることはよく知られていました。 […]
CP/M
または任意の 8 ビット 64K システムでは、1 つのケースが残っています。「ページ アドレス」です。 CP/M 以降、メモリ アドレスを 16 進数で表示するのが標準となっています […] BIN/COM ファイルで述べたように、メモリ アドレスは 0000/0100 です。 […] これらのメモリ アドレスは 00-00/01-00 […] と記述できます。これは、ページ 0、アドレス 0 / ページ 1、アドレス 0 を意味します。 […] 8 ビット 64K コンピュータのメモリ アドレスの最大値は FFFF です […] ページ FF、アドレス FF […] 最小アドレスはページ 0 (または 00) にあり、最大値はページ FF にあります。 […] CP/M ファイル タイプは 3 文字の長さで、P00–PFF の形式のファイル タイプを使用して、HEX ファイルをロードするメモリ アドレスを指定できます。 […]ほとんどのアドレスが「00」で終わっていることに気づいたので、読み込みアドレスをページアドレスに短縮でき、それをファイルタイプの中に配置できることがわかりました[…]
[…]
Intel Intellec 8 […] は、標準的な歴史書で「最初のマイクロコンピュータ」とされている
Altair 8800
より 2 年以上前の 1972 年か 1973 年に初めて登場し
ました […]
Intel は
、8 Mod 8 は 1973 年に初めて製造され、1975 年に製造中止になったと主張しています。Tony Duell 氏は 1972 年製の 8 Mod 80 CPU ボードを所有しており、8 Mod 8 と 4 Mod 40 はどちらも 1976 年 2 月に発行された Intel データ カタログに記載されているため、実際の製造期間はもう少し長かった可能性があります。(関連する Intel の文書は、MCS4、MCS40、MCS8、MCS80 という名称がチップセット、コンピュータ、またはシステム全体を指すのにほぼ区別なく使用されていたため、注意深く読む必要があります。) […]
(52ページ)(注:この記事ではIntel Hexについては触れていませんが、IntelのIntellecシステムが1973年に正式に発表されたと明記しています。ただし、1972年製のユニットもいくつか存在します。)
[…] Intel Intellec Hex フォーマットでは、データ フィールドには 8 ビットまたは 4 ビットのデータのいずれかを含めることができます。8 ビットと 4 ビットの両方のデータを表すには、2 つの ASCII 16 進文字を使用する必要があります。 4ビットデータの場合、意味を持つ文字は1文字のみであり、Intel PROM/ROM注文書に指定する必要があります。[…] 最初のデータフィールドの前と最後のデータフィールドの後には、少なくとも25文字のヌル文字からなるリーダー/トレーラーが必要です。コメント(コロンを除く)は
テープリーダー
に記述できます。[…] データが4ビットの場合、上位桁または下位桁のいずれかがデータを表し、もう一方の桁は任意のASCII 16進数にすることができます。[…]
(468ページ)(注:このマニュアルでは、「BPNFペーパーテープフォーマット」、「非Intellec Hexペーパーテープフォーマット」、および「PNコンピュータパンチカードフォーマット」についても説明しています。)
[…] プログラムは、私と他の2人からなるインテルのソフトウェアグループによって作成およびテストされ、実機での使用準備が整っていた。 […]
[…] 以下はASM-86のみからの出力です。 81 00と同じ、データは
コードセグメント
に属します[…] 82 00と同じ、データは
データセグメント
に属します[…] 83 00と同じ、データは
スタックセグメント
に属します[…] 84 00と同じ、データは
エクストラセグメント
に属します[…] *85絶対コードセグメントの
段落アドレス
[…] *86 絶対データセグメントの段落アドレス […] *87 絶対スタックセグメントの段落アドレス […] *88 絶対エクストラセグメントの段落アドレス […] * 85、86、87、および88はデジタルリサーチ拡張機能です。 […] 各レコードのコロンより前の文字はすべて無視されます。 […]
(346ページ)(注:このマニュアルでは、タイプ85、86、87、88のみをデジタルリサーチ拡張機能としてマークしており、タイプ81、82、83、84はデジタルリサーチ拡張機能ではないとしています。)
[…] 入力 […] このスペースは、改行、キャリッジ リターン、またはコメントに使用できます。 […] 出力 […] 2) 各行は、印刷されない改行、キャリッジ リターン、およびヌル文字で終わります。 […](1+ii+19ページ)
[…] 非印刷キャリッジリターン、ラインフィード、およびヌルはヌルカウントによって決定されます […](56ページ)
[…] (g) 一般的に、制御コード (CR や LF など) が追加されます。このフィールドのデータは、(a) の開始文字 ":" が現れるまでスキップされます。(a)、(b)、(c)、(d)、および (f) フィールドは常に存在するため、レコードの最小長は 11 バイト、最大長は 521 バイトです。 […](4+x+350ページ)
[…] PIP performs a special function if the destination is a disk file with type "HEX" (an Intel hex-formatted machine code file), and the source is an external peripheral device, such as a paper tape reader. In this case, the PIP program checks to ensure that the source file contains a properly formed hex file, with legal hexadecimal values and checksum records. When an invalid input record is found, PIP reports an error message at the console and waits for corrective action. It is usually sufficient to open the reader and rerun a section of the tape (pull the tape back about 20 inches). When the tape is ready for the reread, a single carriage return is typed at the console, and PIP will attempt another read. If the tape position cannot be properly read, the user continues the read (by typing a return following the error message), and enters the record manually with the ED program after the disk file is constructed. For convenience, PIP allows the end-of-file to be entered from the console if the source file is an RDR: device. In this case, the PIP program reads the device and monitors the keyboard. If ctl-Z is typed at the keyboard the read operation is terminated normally. […](6+250 pages)PIP PUN:=NUL:,X.ASM,EOF:,NUL:[…] Send 40 nulls to the punch device; copy the X.ASM file to the punch, followed by an end-of-file (ctl-Z) and 40 more null characters. […]H[…] HEX data transfer: all data are checked for proper Intel hex file format. Nonessential characters between hex records are removed during the copy operation. The console will be prompted for corrective action in case errors occur. […]I[…] Ignore ":00" records in the transfer of Intel hex format file (the I parameter automatically sets the H parameter). […]PIP PUN:=X.HEX[i],Y.ZOT[h][…] First copy X.HEX to the PUN: device and ignore the trailing ":00" record in X.HEX; continue the transfer of data by reading Y.ZOT, which contains HEX records, including any ":00" records it contains. […]
1 CARRY 05714 2 ZERO 05715 3 SIGN 05716 4 PARITY 05717 5 MEMORY 06000 23 SQUAREROOT 04003 […] 83 MONITORUSES 05766 $
[…]
- 1008000044520A2E0B36D0F930FA31CF30D730F9B6
- 100AF0000936F4C730D70401C8C20C0031F930F808
- 040B0000445E0AFF46
$
- 0000000000
— 「付録 A: PL/M のサンプル プログラム: 16 進オブジェクト テープ」。MCS-8 PL/M プログラミング ガイド(PDF)。 Rev 1 (1974 年 9 月印刷版)。 サンタクララ、カリフォルニア州、アメリカ合衆国: Intel Corporation。 1974 年 3 月 15 日 [1973 年 9 月]。 p. 102。 MCS180-0774-1K、MCS280-0974-1K。2022 年 1 月 29 日にオリジナルからアーカイブ(PDF) 。 2022 年 5 月 18 日に取得。
[…] Beim Absolut-Hex Konvertierprogramm von
Keil
können はオプションです […] Hex ファイルのシンボル情報が表示されます。シンボル情報は、「:」を参照してください。シンボル情報には、モジュール名、コード、XDATA、データ、IDATA、ビット、番号が表示されます。 ASCII に関するシンボル情報が表示されます。 Pro Zeile ist 1 Symbol angeschrieben und zwar in der Form: "0 SymbolName Wert" […]
(注:これはSIM51の旧バージョンであり、ソフトウェアとドキュメントは1996年までメンテナンスされていました。)
[…] Intel の "$" に関するデバッグ情報。シンボル名と住所を指定してください。コメントはすべて「;」です。 […]
ISIS-2
製品の Hexfileから
ASM48
を作成し、[…]
ASM86
を使用します。 […]
[…] コードは 16 進バイトのデータでフォーマットされています。ファイルには、16 進バイトのデータの ASCII 表現が含まれています。オブジェクト コード自体の前にはシンボル テーブルがあります。これら 2 つの部分は、一緒に、または別々にロードまたは保存できます。シンボル テーブルは、ドル記号で終わる一連のレコードです。各レコードは、1つ以上のASCIIスペースで区切られた3つのフィールドで構成されています。[…] 数値フィールド […] ソースプログラムシンボルのASCII表現を含むラベルフィールド […] シンボルに割り当てられた16進アドレスを含むアドレスフィールド […] シンボルテーブルは、最初の非空白文字がドル記号であるレコードで終了します。オブジェクトコードは […] シンボルテーブルの後に続きます […] これらのレコード、つまり物理行はそれぞれ、文字またはフレーム単位で長さが異なる6つの論理フィールドで構成されています。 […](90ページ)(注:Intel 2920は1979年に発売されたデジタル信号プロセッサです。)
[…] I […] ダウンロードとアップロード時のチェックサムエラーの許容に関するコメント付きの Intel Hex […](66ページ)
[…] フレーム7、8:レコードタイプ […] 2つのASCII文字。現在(1974年)、すべてのレコードはタイプ0です。このフィールドは将来の拡張のために予約されています […]
[…] Intelのhexファイル形式はバイト指向であり、16ビットPCはそうではないため、プログラムメモリセクションには特別な処理が必要です。各24ビットプログラムワードは、いわゆる「ファントムバイト」を挿入することで32ビットに拡張されます。各プログラムメモリアドレスは2倍され、バイトアドレスになります。たとえば、プログラムメモリの0x100にあるセクションは、hexファイルでは0x200として表されます。次のアセンブリ言語ソースを考えてみましょう。 […] ;ファイル test.s […] .section foo,code,address(0x100) […] .pword 0x112233 […] ファイル […] が生成され、以下の内容になります。 […] :020000040000fa […] :040200003322110096 […] :00000001FF […] データレコード (2 行目) のロード アドレスは 0200 ですが、ソース コードではアドレス 0x100 が指定されています。 […]データは「リトルエンディアン」形式で表現されており、最下位バイトが最初に表示されます。ファントム バイトは最後に表示され、チェックサムの直前に表示されます。 […](277ページ)
[…] バイトの説明、ブロックの種類の説明: 0 = データブロック、1 = エンドブロック。エンドブロックを確認するには、エンドブロックのブロック範囲を確認してください。 (したがって、
CP/M
のアセンブラーは
XASM09 を使用します。Typbyte は Null に属します)。 […](注:XASM09はMotorola 6809アセンブラです。)
[…] PIC16C5X 用アセンブラは、さまざまな形式で PIC16C5X オブジェクト ファイルを生成できます。PIC16C5X プログラマは、少なくとも次の 1 つの形式でデータを受信および送信できる必要があります。8 ビット マージ (INHX8M) 形式が推奨されます。 […] 形式 […] INHX8S […] は 2 つの 8 ビット Hex ファイルを生成します。1 つのファイルには上位 8 ビットのアドレス / データ ペアが含まれ、もう 1 つのファイルには下位 8 ビットが含まれます。オブジェクト コードのファイル拡張子は、下位ファイルの場合は '.obl'、上位ファイルの場合は '.obh' になります。 […] 形式 […] INHX8M […] は、下位バイト / 上位バイトの組み合わせを持つ 1 つの 8 ビット Hex ファイルを生成します。この形式では各アドレスに 8 ビットしか含めることができないため、すべてのアドレスが 2 倍になります。オブジェクト コードのファイル拡張子は '.obj' になります。 […] 形式 […] INHX16 […] は 1 つの 16 ビット Hex ファイルを生成します。オブジェクトコードのファイル拡張子は「.obj」になります。[…]
Hex ワード アドレス オブジェクト フォーマット […] このフォーマットは、オブジェクト コードの各行のアドレスが 2 で割られ、ワード アドレス (16 ビット ワード) に変換される点を除いて、Intel Hex オブジェクト フォーマットと同一です。その他のフィールドはすべて同一です。以下に例を示します。 […] :180800000102030405060708090A0B0C0D0E0F101112131415161718AC […] :02080C00191AA3 […] :00000001FF […](32ページ)