OpCodes.Rem Campo
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Divide dois valores e envia 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 do campo
Comentários
A tabela a seguir lista o formato de assembly hexadecimal e MSIL (Microsoft Intermediate Language) da instrução, juntamente com um breve resumo de referência:
| Formato | Formato de assembly | Descrição |
|---|---|---|
| 5D | Rem | Envia o restante da divisão value1value2 para a pilha. |
O comportamento de transição da pilha, em ordem sequencial, é:
Um
value1é enviado para a pilha.value2é enviado para a pilha.value2evalue1são retirados da pilha e o restante dovalue1divvalue2computado.O resultado é enviado por push para a pilha.
result
=
value1
rem
value2 atende às seguintes condições:
result
=
value1
-
value2
× (value1divvalue2) e:
0 = | result | < | value2 |, sign(result) = sign(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 será NaN. Se value2 for infinito, o resultado será value1 (negado por -infinity).
As operações integrais gerarão DivideByZeroException se value2 for zero.
Observe que, nas plataformas baseadas em Intel, um OverflowException é gerado quando a computação (minint rem -1).
A seguinte sobrecarga do método Emit pode usar o rem opcode: