COMファイル
読み:コム-ファイル
外語:COM file: COMmand file
CP/M、MS-DOS、MSX-DOS及びそれらの後継における実行ファイル。対するはEXEファイルである。
概要
元々はCP/M-80で使われていた拡張子で、実アドレス0100Hより配置されるプレーンなオブジェクトイメージを格納したものである。
ファイルヘッダーを持たず、64Kiバイト以内(より正確には0100H〜FFFFHの範囲内に収まる必要がある)に限られ、これが常に一番最初から実行されるようになっている。
CPUに、Z80を用いたMSX-DOSでも同一のものを採用した。MSX-DOSはCP/Mとの互換性を重視して設計されている。
特徴
タイニーモデル
16ビットOSであるMS-DOSは、64Kiバイトよりも大きなプログラムを実行する能力を持つ。このため、COMフォーマットでは機能不足である。
そのため、MS-DOSでは専用にEXEフォーマットを用いたEXEファイルが作られ使われるようになった。
MS-DOSでは、最もコンパクトとなるタイニーモデル用のフォーマットとなっている。
先頭メモリー
プログラムは、常に0100Hから配置される。つまりファイルの1バイト目は0100H、ファイルの2バイト目は0101H、ということである。
なお、0000H〜00FFHの領域はPSPと呼ばれるシステム領域になっており、BDOSと呼ばれるBIOSコール用のエントリや、コマンドラインの文字列などが格納されている。
再検索