提供された int32 型の値を int32 として評価スタックにプッシュします。
Public Shared ReadOnly Ldc_I4 As OpCode
[C#]
public static readonly OpCode Ldc_I4;
[C++]
public: static OpCode Ldc_I4;
[JScript]
public static var Ldc_I4 : OpCode;
解説
命令の 16 進数の形式、MSIL (Microsoft Intermediate Language) アセンブリ形式、および簡単な説明の一覧を次の表に示します。
形式 | アセンブリ形式 | 説明 |
---|---|---|
20 < int32 > | ldc.i4 num | 値 num をスタックにプッシュします。 |
スタックの遷移動作を順番に示すと、次のようになります。
- 値 num がスタックにプッシュされます。
整数 -128 ~ 127 については特殊な短い (したがってより効率的な) エンコーディングがあり、-1 ~ 8 については特別に短いエンコーディングがあります。短いエンコーディングはすべて、4 バイト整数をスタックにプッシュします。長いエンコーディングは、8 バイト整数、4 バイトと 8 バイトの浮動小数点数、および短い形式に適合しない 4 バイト値に対して使用されます。8 バイト整数定数をスタックにプッシュするには、次の 3 つの方法があります。
1. 32 ビットを超えるビット数で表される定数の場合は、 Ldc_I8 命令を使用します。
2. 9 ~ 32 ビットを必要とする定数の場合は、 Ldc_I4 命令を使用し、続けて Conv_I8 命令を使用します。
3. 8 ビット以下で表すことができる定数の場合は、短い形式の命令を使用し、続けて Conv_I8 を使用します。
ldc.i4 オペコードを使用できる Emit コンストラクタ オーバーロードを次に示します。
- ILGenerator.Emit(OpCode, int)
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ