OpCodes.Neg Поле

Определение

Отвергает значение и помещает результат в стек вычислений.Negates a value and pushes the result onto the evaluation stack.

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 

Значение поля

OpCode

Комментарии

В следующей таблице приводится список шестнадцатеричных и форматных сборок инструкций языка MSIL, а также краткая сводка.The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:

ФорматFormat Формат сборкиAssembly Format ОписаниеDescription
6565 расходneg Инвертирует значение, находящегося на вершине стека.Negates the value currently on top of the stack.

Переход в стек в последовательном порядке имеет следующие особенности:The stack transitional behavior, in sequential order, is:

  1. Значение помещается в стек.A value is pushed onto the stack.

  2. Значение извлекается из стека и инвертируется.A value is popped from the stack and negated.

  3. Результат помещается в стек.The result is pushed onto the stack.

negИнструкция инвертирует значение и помещает результат поверх стека.The neg instruction negates value and pushes the result on top of the stack. Тип возвращаемого значения совпадает с типом операнда.The return type is the same as the operand type.

Отрицание целочисленных значений — это нестандартное отрицание числа единиц.Negation of integral values is standard two's complement negation. В частности, при инвертировании самого отрицательного числа (которое не имеет положительного аналога) выдается наибольшее отрицательное число.In particular, negating the most negative number (which does not have a positive counterpart) yields the most negative number. Чтобы обнаружить это переполнение, используйте Sub_Ovf инструкцию (то есть вычтите из 0).To detect this overflow use the Sub_Ovf instruction instead (that is, subtract from 0).

Отрицание числа с плавающей запятой не может быть переполнено и отрицание NaN возвращает NaN.Negating a floating-point number cannot overflow, and negating NaN returns NaN.

Следующая Emit перегрузка метода может использовать neg код операции:The following Emit method overload can use the neg opcode:

Применяется к