OpCodes.Rem Fält

Definition

Delar upp två värden och push-överför resten till utvärderingsstacken.

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 

Fältvärde

Kommentarer

I följande tabell visas instruktionens sammansättningsformat för hexadecimalt och Microsoft mellanliggande språk (MSIL), tillsammans med en kort referenssammanfattning:

Format Sammansättningsformat Description
5D rem Push-överför resten av uppdelningen value1 med value2 på stacken.

Stackens övergångsbeteende i sekventiell ordning är:

  1. A value1 skickas till stacken.

  2. value2 skickas till stacken.

  3. value2 och value1 poppas från stacken och resten av value1divvalue2 beräknas.

  4. Resultatet skickas till stacken.

result = value1 rem value2 uppfyller följande villkor:

result = value1 - value2 × (value1divvalue2) och:

0 = | result | < | value2 |, sign(result) = sign(value1), där div är divisionsinstruktionen som trunkerar mot noll.

Om value2 är noll eller value1 är oändligt är resultatet NaN. Om value2 är oändligt är value1 resultatet (negerat för -infinity).

Integralåtgärder genererar DivideByZeroException om value2 är noll.

Observera att på Intel-baserade plattformar genereras en OverflowException när databehandling (minint rem -1).

Följande Emit metodöverlagring kan använda rem opcode:

Gäller för