DOS MZ実行可能ファイルとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > 百科事典 > DOS MZ実行可能ファイルの意味・解説 

DOS MZ executable

(DOS MZ実行可能ファイル から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/06/19 03:30 UTC 版)

DOS MZ executable
拡張子 .exe
MIMEタイプ application/x-dosexec、application/x-msdos-program
マジック
ナンバー
MZ or ZM
種別 バイナリ, 実行可能
拡張 New Executable
Linear Executable
Portable Executable

DOS MZ実行可能形式は、DOSEXEファイルに使用される実行可能形式ファイルである。

この形式は、ファイルの先頭にあるASCII文字列「MZ」(16進数 :4D 5A)(「 マジックナンバー」)で識別できる。「MZ」は、MS-DOSの主要な開発者の1人であるMark Zbikowskiの頭文字である[1]

MZ DOS実行可能ファイルは、 COM実行可能形式よりも新しく形式が異なる。 DOS実行可能ヘッダーには、複数のセグメントを任意のメモリアドレスにロードできるリロケーション情報が含まれ、64キロバイトを超える実行可能ファイルをサポートする。ただし、この形式では依然として使用可能メモリ量が制限される。 この制限は、後にDOSエクステンダで回避されることになる。

DOSで実行されるEXEプログラムの環境に関する情報は、プログラムセグメントプレフィクス (PSP) に格納されている。

EXEファイルには、通常、コード、データ、およびスタック用の個別のセグメントがある。 プログラムの実行はコードセグメントのアドレス0から始まり、スタックポインターレジスタはヘッダー情報に含まれる値に設定される(したがって、ヘッダーが512バイトスタックを指定している場合、スタックポインターは200hに設定される)。 個別のスタックセグメントを使用せずに、必要に応じて単純にスタックのコードセグメントを使用することもできる。

DS(データセグメント)レジスタには通常、CS(コードセグメント)レジスタと同じ値が含まれており、EXEファイルが初期化されると、データセグメントの実際のセグメントアドレスはロードされない。プログラマーが自分で設定する必要があり、通常は次の手順で行う。

  MOV AX, @DATA
  MOV DS, AX

元のDOS 1.x APIでは、プログラム終了時にPSPのあるセグメントを指すDSレジスタも必要であった。これは、次の手順で実行された。

  PUSH DS
  XOR AX, AX
  PUSH AX

その後、プログラムの終了はRETF命令によって実行され、スタックからPSPを使用して元のセグメントアドレスを取得し、INT 20h命令を含むアドレス0にジャンプする。

DOS 2.x APIでは、プログラムの開始時にPSPセグメントアドレスを保存する必要のないINT 21h Function 4Chという新しいプログラム終了関数を導入し、マイクロソフトは古いDOS 1.x方式は使用しないよう推奨した。

互換性

MZ DOS実行ファイルは、DOSおよびWindows 9xベースのオペレーティングシステムから実行できる。 32ビットWindows NTベースのオペレーティングシステムでは、組み込みの仮想DOSマシンで実行できる(ただし、一部のグラフィックモードはサポートされていない)。 64ビットバージョンのWindowsでは実行できない。 これらの実行可能ファイルは、 DOSBox 、 DOSEMU、WineCygwin を使っても実行できる。

MZ DOS実行ファイルは、 Digital Mars Optlink、MSリンカー、VALXまたはOpen WatcomのWLINK、FASMなどのリンカを使って作成できる。

関連項目

脚注

  1. ^ Inside Windows: An In-Depth Look into the Win32 Portable Executable File Format - MSDN Magazine, February 2002. "Every PE file begins with a small MS-DOS executable. ... The first bytes of a PE file begin with the traditional MS-DOS header, called an IMAGE_DOS_HEADER. The only two values of any importance are e_magic and e_lfanew. ... The e_magic field (a WORD) needs to be set to the value 0x5A4D. ... In ASCII representation, 0x5A4D is MZ, the initials of Mark Zbikowski, one of the original architects of MS-DOS."

外部リンク




英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  
  •  DOS MZ実行可能ファイルのページへのリンク

辞書ショートカット

すべての辞書の索引

「DOS MZ実行可能ファイル」の関連用語

1
14% |||||

DOS MZ実行可能ファイルのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



DOS MZ実行可能ファイルのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのDOS MZ executable (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS