OpCodes.Rem Feld

Definition

Dividiert zwei Werte und legt den Rest auf dem Auswertungsstapel ab.Divides two values and pushes the remainder onto the evaluation stack.

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 

Feldwert

OpCode

Hinweise

In der folgenden Tabelle werden das hexadezimale und das MSIL-AssemblyFormat (Microsoft Intermediate Language) zusammen mit einer kurzen Verweis Zusammenfassung aufgelistet:The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:

FormatFormat AssemblyFormatAssembly Format BESCHREIBUNGDescription
5D5D remrem Überträgt den Rest der Division value1 durch value2 auf den Stapel.Pushes the remainder of dividing value1 by value2 onto the stack.

Das Stapel Übergangs Verhalten ist in sequenzieller Reihenfolge:The stack transitional behavior, in sequential order, is:

  1. Ein value1 wird auf den Stapel verschoben.A value1 is pushed onto the stack.

  2. value2 wird auf den Stapel verschoben.value2 is pushed onto the stack.

  3. value2 und value1 werden aus dem Stapel und dem restlichen value1 div value2 berechnet.value2 and value1 are popped from the stack and the remainder of value1 div value2 computed.

  4. Das Ergebnis wird auf den Stapel verschoben.The result is pushed onto the stack.

result = value1``rem value2 erfüllt die folgenden Bedingungen:result = value1 rem value2 satisfies the following conditions:

result = value1 - value2``×( value1 div value2 ), und:result = value1 - value2 × (value1 div value2), and:

0 = | result | < | value2 |, Sign ( result ) = Sign ( value1 ), wobei div die Divisions Anweisung ist, die in Richtung NULL abgeschnitten wird.0 = | result | < | value2 |, sign(result) = sign(value1), where div is the division instruction that truncates towards zero.

Wenn value2 0 (null) ist oder unendlich ist, value1 ist das Ergebnis NaN.If value2 is zero or value1 is infinity the result is NaN. Wenn value2 unendlich ist, ist das Ergebnis value1 (negiert für -infinity ).If value2 is infinity, the result is value1 (negated for -infinity).

Ganzzahlige Vorgänge lösen aus, DivideByZeroException Wenn value2 NULL ist.Integral operations throw DivideByZeroException if value2 is zero.

Beachten Sie, dass auf den Intel-basierten Plattformen eine OverflowException bei der Berechnung von (minint rem -1) ausgelöst wird.Note that on the Intel-based platforms an OverflowException is thrown when computing (minint rem -1).

In der folgenden Emit Methoden Überladung kann der rem Opcode verwendet werden:The following Emit method overload can use the rem opcode:

Gilt für: