OpCodes.Rem Pole
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Dzieli dwie wartości i wypycha resztę do stosu oceny.
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
Wartość pola
Uwagi
W poniższej tabeli wymieniono format zestawu szesnastkowy i microsoft intermediate language (MSIL) instrukcji wraz z krótkim podsumowaniem referencyjnym:
Format | Format zestawu | Opis |
---|---|---|
5-W | Rem | Przesuwa resztę dzielenia value1 przez value2 na stos. |
Zachowanie przejściowe stosu w kolejności sekwencyjnej jest następujące:
value1
jest wypchnięta na stos.value2
jest wypychany na stos.value2
ivalue1
są zwinięte ze stosu i pozostałej częścivalue1
div
value2
obliczonych.Wynik jest wypychany do stosu.
result
=
value1
rem
value2
spełnia następujące warunki:
result
=
value1
-
value2
×
(value1
div
value2
) i:
0 = | result
| < | value2
|, sign(result
) = sign(value1
), gdzie div
to instrukcja dzielenia obcięta w kierunku zera.
Jeśli value2
ma wartość zero lub value1
jest nieskończoność, wynik to NaN. Jeśli value2
jest nieskończoność, wynik jest value1
(negowany dla -infinity
).
Operacje całkowite zgłaszają DivideByZeroException, jeśli value2
wynosi zero.
Należy pamiętać, że na platformach opartych na technologii Intel OverflowException jest zgłaszany podczas przetwarzania (minint rem
-1).
Następujące przeciążenie metody Emit może używać rem
opcode: