OpCodes.Ldarg フィールド


指定したインデックス値によって参照される引数をスタックに読み込みます。Loads an argument (referenced by a specified index value) onto the stack.

public: static initonly System::Reflection::Emit::OpCode Ldarg;
public static readonly System.Reflection.Emit.OpCode Ldarg;
 staticval mutable Ldarg : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldarg As OpCode 




次の表は、命令の16進形式と Microsoft 中間言語 (MSIL) のアセンブリ形式と、簡単なリファレンスの概要を示しています。The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:

FormatFormat アセンブリ形式Assembly Format 説明Description
FE 09 < unsigned int16 >FE 09 < unsigned int16 > ldarg indexldarg index index の引数をスタックに読み込みます。Load argument at index onto stack.

スタックの移行動作は、次の順序で実行されます。The stack transitional behavior, in sequential order, is:

  1. index の引数値はスタックにプッシュされます。The argument value at index is pushed onto the stack.

ldarg 命令は、indexにインデックスが付けられた引数をプッシュします。引数のインデックスは0以降で、評価スタックになります。The ldarg instruction pushes the argument indexed at index, where arguments are indexed from 0 onwards, onto the evaluation stack. ldarg 命令を使用すると、入力引数からコピーすることによって、値型またはプリミティブ値をスタックに読み込むことができます。The ldarg instruction can be used to load a value type or a primitive value onto the stack by copying it from an incoming argument. 引数の値の型は、現在のメソッドのシグネチャによって指定された引数の型と同じです。The type of the argument value is the same as the type of the argument, as specified by the current method's signature.

可変長引数リストを受け取るプロシージャの場合、ldarg 命令は、シグネチャの変数部分ではなく、初期の固定引数に対してのみ使用できます (詳細については、Arglist 命令を参照してください)。For procedures that take a variable-length argument list, the ldarg instruction can be used only for the initial fixed arguments, not those in the variable part of the signature (see the Arglist instruction for more details).

長さが4バイトより小さい整数値を保持する引数は、スタックに読み込まれるときに int32 型に拡張されます。Arguments that hold an integer value smaller than 4 bytes long are expanded to type int32 when they are loaded onto the stack. 浮動小数点値は、ネイティブサイズ (型 F) に展開されます。Floating-point values are expanded to their native size (type F).

次の Emit メソッドオーバーロードは、ldarg オペコードを使用できます。The following Emit method overload can use the ldarg opcode: