指定した配列インデックスの unsigned int16 型の要素を int32 として評価スタックの一番上に読み込みます。
Public Shared ReadOnly Ldelem_U2 As OpCode
[C#]
public static readonly OpCode Ldelem_U2;
[C++]
public: static OpCode Ldelem_U2;
[JScript]
public static var Ldelem_U2 : OpCode;
解説
命令の 16 進数の形式、MSIL (Microsoft Intermediate Language) アセンブリ形式、および簡単な説明の一覧を次の表に示します。
形式 | アセンブリ形式 | 説明 |
---|---|---|
93 | ldelem.u2 | インデックスにある unsigned int16 型の要素を int32 としてスタックの一番上に読み込みます。 |
スタックの遷移動作を順番に示すと、次のようになります。
- オブジェクト参照 array がスタックにプッシュされます。
- インデックス値 index がスタックにプッシュされます。
- index と array がスタックからポップされます。array 内の index の位置に格納された値が検索されます。
- 値がスタックにプッシュされます。
ldelem.u2 命令はインデックス番号が 0 から始まる 1 次元配列 array 内のインデックス index (natural int 型) の要素の値を読み込み、スタックの一番上に配置します。配列はオブジェクトであるため、 O 型の値によって表されます。
ldelem.u2 の戻り値は int16 です。
4 バイト未満の整数値は、評価スタックに読み込まれるときに、 natural int ではなく、 int32 に拡張されます。
array が null 参照である場合は、 NullReferenceException がスローされます。
array が必要な型の要素を保持していない場合は、 ArrayTypeMismatchException がスローされます。index が負の値である場合、または array の上限を超える場合は、 IndexOutOfRangeException がスローされます。
ldelem.u2 オペコードを使用できる Emit コンストラクタ オーバーロードを次に示します。
- ILGenerator.Emit(OpCode)
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ