OpCodes.Ldloc フィールド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
特定のインデックスのローカル変数を評価スタックに読み込みます。
public: static initonly System::Reflection::Emit::OpCode Ldloc;
public static readonly System.Reflection.Emit.OpCode Ldloc;
staticval mutable Ldloc : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldloc As OpCode
フィールド値
注釈
次の表に、命令の 16 進数と Microsoft Intermediate Language (MSIL) アセンブリ形式と、簡単なリファレンスの概要を示します。
形式 | アセンブリ形式 | 説明 |
---|---|---|
FE 0C <unsigned int16 > |
Ldloc index |
インデックス index 位置のローカル変数をスタックに読み込みます。 |
スタック遷移の動作は、順番に次のようになります。
- 指定したインデックスのローカル変数値がスタックにプッシュされます。
命令は ldloc
、渡されたインデックスにあるローカル変数番号の内容を評価スタックにプッシュします。ここで、ローカル変数には 0 以降の番号が付けられます。 ローカル変数は、メソッドの initialize フラグが true の場合にのみ、メソッドに入る前に 0 に初期化されます。 可能なローカル変数は 65,535 (2^16-1) です (0 から 65,534)。 インデックス 65,535 は無効です。多くの場合、実装では 2 バイトの整数を使用して、ローカルのインデックスと、特定のメソッドのローカルの合計数の両方を追跡します。 65535 のインデックスが有効になっている場合、このようなメソッドのローカルの数を追跡するには、より広い整数が必要になります。
、ldloc.1
、ldloc.2
、および ldloc.3
の各命令はldloc.0
、最初の 4 つのローカル変数にアクセスするための効率的なエンコードを提供します。
値の型は、メソッド ヘッダーで指定されているローカル変数の型と同じです。 「パーティション I」を参照してください。4 バイト未満のローカル変数は、スタックに読み込まれるときに型 int32
に拡張されます。 浮動小数点値は、ネイティブ サイズ (型 F
) に拡張されます。
次 Emit のメソッド オーバーロードでは、オペコードを ldloc
使用できます。
適用対象
.NET