「COMファイル」の版間の差分
←新しいページ: '{{Infobox file format | name = COM (command) | icon = | extension = .COM | mime = | type code = | uniform type = | owner = | genre = [[実行可能ファイ...' |
AlleborgoBot (会話 | 投稿記録) m robot Adding: la:COM Modifying: pt:COM (formato) |
||
42行目: | 42行目: | ||
[[he:קובץ COM]] |
[[he:קובץ COM]] |
||
[[it:Eseguibile COM]] |
[[it:Eseguibile COM]] |
||
[[ |
[[la:COM]] |
||
[[pt:COM (formato)]] |
|||
[[sl:COM]] |
[[sl:COM]] |
||
[[sv:COM (filformat)]] |
[[sv:COM (filformat)]] |
2007年10月2日 (火) 13:40時点における版
拡張子 | .COM |
---|---|
MIMEタイプ | application/x-dosexec |
種別 | 実行可能ファイル |
COMファイル (コムファイル、COM file) は、実行可能ファイル形式の一つ。語源はcommand(命令)。拡張子は「.COM」(本来は大文字)だが、トップレベルドメインの.com (commercial) とは無関係。
実行時のメモリイメージがそのままファイルとなっている、最も単純な実行可能ファイル形式である。
歴史
拡張子.COMの実行ファイルは古くからあったが、現在の形式のものはCP/Mで使われ、CP/Mを元にしたMS-DOSにも採用された。ただし、CPU(CP/Mは8080系、MS-DOSは8086系)や割り込みの仕様の違いのため、互換性は乏しい。
MS-DOSには、ほかに2つの実行可能ファイル形式、EXEファイルとBATファイルがあった。EXEとBATはMicrosoft Windowsにも採用されたが、COMファイルは廃止された(仮想MS-DOSマシン上では実行可能)。
内容
実行時のメモリイメージがそのままファイルとなっており、ファイルの内容を0100番地からメモリに展開し先頭にジャンプすれば、直ちに実行が始まる。ファイルヘッダなどいっさいのメタデータを含まず、これは、EXEヘッダからファイルが始まるEXEファイルとの大きな違いである。
セグメントがコードもデータも含め1つであり、これは複数のセグメントを持つことができるEXEファイルとは異なる。このため、ファイルサイズは最大で65280バイト(8086系CPUのセグメントサイズである64キロバイトからメモリ展開時のオフセットの256バイトを引いた値)である。また、メタデータがないため極小の実行可能ファイルを作ることができる。これらの理由で、一般に、EXEファイルより小さいことが多い。
MS-DOSでの使用
MS-DOSの実行可能ファイル形式のうち、最も実行優先順位が高い。つまり、拡張子を省略してコマンドをコマンドライン入力したが、拡張子以外が同じファイル名の実行可能ファイルがあった場合、「COM」「EXE」「BAT」の順に、ファイルがあるかどうかがチェックされる(これらの前に内部コマンドのチェックがある)。
COMファイルを作成するには、コンパイラなどでEXEファイルとして作成した後、EXE2COMのような変換プログラムを使うことが多い。