Condividi tramite


OpCodes.Rem Campo

Definizione

Divide due valori e inserisce il resto nello stack di valutazione.

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 

Valore del campo

Commenti

La tabella seguente elenca il formato di assembly Esadecimale e MSIL (Microsoft Intermediate Language), insieme a un breve riepilogo di riferimento:

Formato Formato assembly Descrizione
5D Rem Inserisce il resto della divisione value1 per value2 nello stack.

Il comportamento transitorio dello stack, in ordine sequenziale, è:

  1. Un value1 viene inserito nello stack.

  2. value2 viene inserito nello stack.

  3. value2 e value1 vengono estratte dallo stack e il resto del value1divvalue2 calcolato.

  4. Il risultato viene inserito nello stack.

result = value1 rem value2 soddisfa le condizioni seguenti:

result = value1 - value2 × (value1divvalue2) e:

0 = | result | < | value2 |, sign(result) = sign(value1), dove div è l'istruzione di divisione che tronca verso zero.

Se value2 è zero o value1 è infinito, il risultato è NaN. Se value2 è infinito, il risultato viene value1 (negato per -infinity).

Le operazioni integrali generano DivideByZeroException se value2 è zero.

Si noti che nelle piattaforme basate su Intel viene generata una OverflowException durante l'elaborazione (minint rem -1).

L'overload del metodo Emit seguente può usare il codice operativo rem:

Si applica a