OpCodes.Conv_I2 フィールド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
評価スタックの一番上の値を int16
に変換し、int32
への拡張 (埋め込み) を行います。
public: static initonly System::Reflection::Emit::OpCode Conv_I2;
public static readonly System.Reflection.Emit.OpCode Conv_I2;
staticval mutable Conv_I2 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_I2 As OpCode
フィールド値
注釈
次の表に、命令の 16 進数と Microsoft Intermediate Language (MSIL) アセンブリ形式と、簡単なリファレンスの概要を示します。
形式 | アセンブリ形式 | 説明 |
---|---|---|
68 | conv.i2 | に変換し int16 、 int32 スタックをプッシュします。 |
スタック遷移の動作は、順番に次のようになります。
value
がスタックにプッシュされます。value
がスタックからポップされ、変換操作が試行されます。変換が成功すると、結果の値がスタックにプッシュされます。
オペコードは conv.i2
、スタックの上部にある を value
オペコードで指定された型に変換し、その変換された値をスタックの一番上に残します。 4 バイト未満の整数値は、評価スタックに読み込まれるときに にint32
拡張されます (または conv.u
を使用しない限りconv.i
、その場合は結果も native int
になります)。 浮動小数点値は 型に F
変換されます。
浮動小数点数から整数値への変換では、数値が 0 に切り捨てられます。 から float64
に float32
変換すると、精度が失われる可能性があります。 が 大きすぎて に収まらない場合 value
は、正の float32 (F)
無限大 (が正の場合 value
) または負の無限大 (が負の場合 value
) が返されます。 オーバーフローが 1 つの整数型を別の整数型に変換すると、上位ビットが切り捨てられます。 結果が よりも int32
小さい場合、値はスロットを埋めるために符号拡張されます。
オーバーフローが発生して浮動小数点型が整数に変換された場合、返される値は指定されません。
このフィールドを使用する場合、例外はスローされません。 結果の型が結果の値を正しく表さない場合に例外をスローする同等の手順については、 と Conv_Ovf_I2_Un を参照Conv_Ovf_I2してください。
次 Emit のメソッド オーバーロードでは、オペコードを conv.i2
使用できます。
適用対象
.NET