次の方法で共有


SEGMENT

セグメント属性を持つ name というプログラム セグメントを定義します。

name SEGMENT [[READONLY]] [[align]] [[combine]] [[use]] [[characteristics]] ALIAS(string) [['class']]
   statements
   name ENDS

パラメーター

  • 整列
    セグメントの開始アドレスを起点としてメモリ アドレスの範囲を選択できます。 アライメントの種類としては、次のいずれかを使用できます。

    アラインメントの種類

    開始アドレス

    BYTE

    次に使用可能なバイト アドレス。

    WORD

    次に使用可能なワード アドレス (ワードあたり 2 バイト)。

    DWORD

    次に使用可能なダブル ワード アドレス (ダブル ワードあたり 4 バイト)。

    PARA

    次に使用可能な段落アドレス (段落あたり 16 バイト)。

    PAGE

    次に使用可能なページ アドレス (ページあたり 256 バイト)。

    ALIGN(n)

    次に使用可能な n 番目のバイト アドレス。 詳細については、次の「解説」を参照してください。

    このパラメーターが指定されていない場合は、既定で PARA が使用されます。

  • 結合
    PUBLICSTACKCOMMONMEMORYAT addressPRIVATE

  • を使用する
    USE16USE32FLAT

  • characteristics
    INFOREADWRITEEXECUTESHAREDNOPAGENOCACHE、および DISCARD

    これらは COFF でのみサポートされ、似た名前の COFF セクション特性に対応します (たとえば SHARED は IMAGE_SCN_MEM_SHARED に対応します)。 READ は IMAGE_SCN_MEM_READ フラグを設定します。 旧式の READONLY フラグでは、セクションにより、IMG_SCN_MEM_WRITE フラグがクリアされていました。 何か characteristics が設定されている場合、既定の特性は使用されず、プログラマ定義のフラグのみが有効になります。

  • ALIAS(string)
    この文字列は、生成された COFF オブジェクト内のセクション名として使用されます。 同じ外部名と異なる MASM セグメント名を持つ複数のセクションが作成されます。

    /omf ではサポートされていません。

  • class
    どのようにセグメントする必要があります組み合わせることができ、ファイルの順序を指定します。 Typical values are, 'DATA', 'CODE', 'CONST' and'STACK'

解説

ALIGN(n) の n は 1 から 8192 までの 2 の累乗になります。/omf ではサポートされていません。

参照

その他の技術情報

ディレクティブ リファレンス