次の方法で共有


OpCodes.Neg フィールド

値を無効にし、結果を評価スタックにプッシュします。

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

解説

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

形式 アセンブリ形式 説明
65 neg 現在スタックの一番上にある値を無効にします。

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

  1. 値がスタックにプッシュされます。
  2. 値がスタックからポップされ、無効にされます。
  3. 結果がスタックにプッシュされます。

neg 命令は、値を無効にし、結果をスタックの一番上にプッシュします。戻り値の型は、オペランド型と同じです。

整数値の否定は、標準の 2 の補数否定です。特に、対応する正数がない最も大きな負数を否定すると、最も大きな負数になります。このオーバーフローを検出するには、この命令ではなく、 Sub_Ovf 命令を使用します。つまり、0 から減算します。

浮動小数点数を否定してもオーバーフローは生じず、NaN を否定すると NaN を返します。

neg オペコードを使用できる 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 名前空間