次の方法で共有


OpCodes.Conv_Ovf_I1 フィールド

評価スタックの一番上にある符号付きの値を符号付き int8 に変換し、その値を int32 に拡張し、オーバーフローについては OverflowException をスローします。

Public Shared ReadOnly Conv_Ovf_I1 As OpCode
[C#]
public static readonly OpCode Conv_Ovf_I1;
[C++]
public: static OpCode Conv_Ovf_I1;
[JScript]
public static var Conv_Ovf_I1 : OpCode;

解説

命令の 16 進数の形式、MSIL (Microsoft Intermediate Language) アセンブリ形式、および簡単な説明の一覧を次の表に示します。

形式 アセンブリ形式 説明
B3 conv.ovf.i1 int8 に変換し (スタック上で int32 として)、オーバーフローについては例外をスローします。

スタックの遷移動作を順番に示すと、次のようになります。

  1. value がスタックにプッシュされます。
  2. value がスタックからポップされ、変換演算が試行されます。オーバーフローが発生すると、例外がスローされます。
  3. 正常に変換された場合は、結果値がスタックにプッシュされます。

conv.ovf.i1 オペコードは、スタックの一番上の value をオペコードで指定された型に変換し、変換した値をスタックの一番上に配置します。ターゲットの型で表現するには値が大きすぎるか、小さすぎる場合は、例外がスローされます。

浮動小数点数から整数値への変換では、数値が 0 方向に切り捨てられます。4 バイト未満の整数値は、評価スタックに読み込まれるときに int32 に拡張されます。ただし、 conv.ovf.i または conv.ovf.u が使用される場合を除きます。この場合は、結果も natural int になります。

結果を結果型で表すことができない場合は、 OverflowException がスローされます。

conv.ovf.i1 オペコードを使用できる 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 ファミリ

参照

OpCodes クラス | OpCodes メンバ | System.Reflection.Emit 名前空間