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 value1 value2 para a pilha. |
O comportamento de transição da pilha, em ordem sequencial, é:
Um
value1
é enviado para a pilha.value2
é enviado para a pilha.value2
evalue1
são retirados da pilha e o restante dovalue1
div
value2
computado.O resultado é enviado por push para a pilha.
result
=
value1
rem
value2
atende às seguintes condições:
result
=
value1
-
value2
×
(value1
div
value2
) 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: