インテル拡張ヘキサ・ファイル(20ビット)は,スタート・アドレス・レコード,拡張アドレス・レコード,データ・レコード,およびエンド・レコードの4種類のレコード注により構成されます。
インテル拡張ヘキサ・ファイル(32ビット)は,スタート・リニア・アドレス・レコード,拡張リニア・スタート・アドレス・レコード,スタート・アドレス・レコード,拡張アドレス・レコード,データ・レコード,およびエンド・レコードの6種類のレコード注により構成されます。
 
インテル拡張ヘキサ・ファイルの構成と内容を以下に示します。
注  | 拡張アドレス・レコード,およびデータ・レコードは繰り返されます。  | 
 
 
 
各レコードは,各種フィールドにより以下の形で構成されます。
:   XX  XXXX  XX  DD......DD SS  NL 
(1) (2) (3)   (4)     (5)    (6) (7) 
 | 
 
| 
 | 
 | 
| 
 | 
 
レコード・マーク 
 | 
| 
 | 
 
バイト数 
(5)の2桁ずつの16進数で表されるバイトのバイト数です。 
 | 
| 
 | 
 
ロケーション・アドレス 
 | 
| 
 | 
 
レコード・タイプ 
05			:	スタート・リニア・アドレス・レコード 
04			:	拡張リニア・アドレス・レコード 
03			:	スタート・アドレス・レコード 
02			:	拡張アドレス・レコード 
00			:	データ・レコード 
01			:	エンド・レコード 
 | 
| 
 | 
 
コード 
コードの1バイトごとを2桁の16進数で表したものです。 
 | 
| 
 | 
 
チェック・サム 
:,SS,NLを除くレコード内の各バイト値を16進数で加算した結果の2の補数です(2桁)。 
 | 
| 
 | 
 
ニュー・ライン(\n) 
 | 
 
備考  | インテル・ヘキサ・フォーマットのロケーション・アドレスは2バイト(16ビット)です。 
したがって,64Kの空間しか直接指定はできません。 
それを拡張するために,16ビットの拡張アドレスを追加して1M(20ビット)の空間まで扱えるようにしたのがインテル拡張ヘキサ・フォーマットです。 
具体的には,16ビットの拡張アドレスを指定するレコード・タイプを追加しています。 
この追加した拡張アドレスの4ビットをシフトしてロケーション・アドレスと加算することで,20ビットのアドレスを表現できるようになっています。  |