OpCodes.Rem Поле
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Делит два значения и отправляет оставшуюся часть в стек вычислений.
public: static initonly System::Reflection::Emit::OpCode Rem;
public static readonly System.Reflection.Emit.OpCode Rem;
staticval mutable Rem : System.Reflection.Emit.OpCode
Public Shared ReadOnly Rem As OpCode
Значение поля
Комментарии
В следующей таблице перечислены шестнадцатеричные и шестнадцатеричные и msIL-коды инструкции, а также краткие справочные сводки:
Формат | Формат сборки | Описание |
---|---|---|
5D | рем | Отправляет оставшуюся часть деления value1 на value2 в стек. |
Переходное поведение стека в последовательном порядке:
value1
помещается в стек.value2
отправляется в стек.value2
иvalue1
отображаются из стека и остальныеvalue1
div
value2
вычисляются.Результат передается в стек.
result
=
value1
rem
value2
удовлетворяет следующим условиям:
result
=
value1
-
value2
×
(value1
div
value2
) и:
0 = | result
| < | value2
|, sign(result
) = sign(value1
), где div
— это инструкция деления, которая усечена к нулю.
Если value2
равно нулю или value1
бесконечность результатом является NaN. Если value2
бесконечность, результат value1
(отрицается для -infinity
).
Целочисленные операции вызывают DivideByZeroException, если value2
равно нулю.
Обратите внимание, что на платформах Intel OverflowException возникает при вычислении (мининт rem
-1).
Следующая перегрузка метода Emit может использовать rem
opcode: