OpCodes.Neg 字段

定义

对一个值执行求反并将结果推送到计算堆栈上。

public: static initonly System::Reflection::Emit::OpCode Neg;
public static readonly System.Reflection.Emit.OpCode Neg;
 staticval mutable Neg : System.Reflection.Emit.OpCode
Public Shared ReadOnly Neg As OpCode 

字段值

注解

下表列出了指令的十六进制和 Microsoft 中间语言 (MSIL) 程序集格式,以及简短的参考摘要:

格式 程序集格式 说明
65 neg 将当前位于堆栈顶部的值求反。

堆栈过渡行为(按顺序排列)为:

  1. 值将推送到堆栈上。

  2. 一个值从堆栈中弹出并被否定。

  3. 结果将推送到堆栈上。

指令 neg 将值求反,并将结果推送到堆栈顶部。 返回类型与操作数类型相同。

整型值的求反是标准二的补反。 具体而言,如果否定最负数 (没有正对数) 生成负数。 若要检测此溢出, Sub_Ovf 请改用指令 (,即从 0 减去) 。

否定浮点数不能溢出,而否定 NaN 将返回 NaN。

以下 Emit 方法重载可以使用 neg opcode:

适用于