OpCodes.Rem Campo

Definição

Divide dois valores e empurra o restante para a pilha de avaliação.

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 

Valor de Campo

Observações

A tabela seguinte lista o formato hexadecimal e assembly da Microsoft Intermediate Language (MSIL) da instrução, juntamente com um breve resumo de referência:

Formato Formato de Montagem Descrição
5D rem Empurra o resto da divisão value1value2 para a pilha.

O comportamento de transição da pilha, por ordem sequencial, é:

  1. A value1 é empurrado para a pilha.

  2. value2 é empurrado para a pilha.

  3. value2 e value1 são extraídos da pilha e o restante de value1divvalue2 computado.

  4. O resultado é empurrado para a pilha.

result = value1 rem value2 satisfaz as seguintes condições:

result = value1 - value2 × (value1divvalue2), e:

0 = | result | < | value2 |, signo(result) = signo(value1), onde div é a instrução de divisão que trunca em direção a zero.

Se value2 for zero ou value1 for infinito, o resultado é NaN. Se value2 for infinito, o resultado é value1 (negado para -infinity).

As operações integrais lançam DivideByZeroException se value2 for zero.

Note que nas plataformas baseadas em Intel, um OverflowException é lançado ao calcular (minint rem -1).

O seguinte Emit método de sobrecarga pode usar o rem opcode:

Aplica-se a