OpCodes.Add Campo

Definição

Soma dois valores e empurra o resultado para a pilha de avaliação.

public: static initonly System::Reflection::Emit::OpCode Add;
public static readonly System.Reflection.Emit.OpCode Add;
 staticval mutable Add : System.Reflection.Emit.OpCode
Public Shared ReadOnly Add 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
58 add Soma dois valores numéricos, retornando um novo valor numérico.

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

  1. value1 é empurrado para a pilha.

  2. value2 é empurrado para a pilha.

  3. value2 e value1 são extraídos da pilha; value1 é adicionado a value2.

  4. O resultado é empurrado para a pilha.

O overflow não é detetado para operações inteiras (para o tratamento correto do overflow, ver Add_Ovf).

A adição inteira envolve, em vez de satura. Por exemplo, assumindo inteiros de 8 bits onde value1 está definido para 255 e value2 está definido para 1, o resultado enrolado é 0 em vez de 256.

O transbordo em ponto flutuante retorna +inf (PositiveInfinity) ou -inf (NegativeInfinity).

Os tipos de operandos aceitáveis e o respetivo tipo de dados de resultado estão listados na tabela abaixo. Se não houver uma entrada para uma combinação de tipos específica (por exemplo, int32 e float; int32 e int64), é uma Língua Intermédia Microsoft(MSIL) inválida e gera um erro.

operando Tipo Value1 Tipo Value2 Tipo de resultado
add int32 int32 int32
add int32 native int native int
add int32 & &
add int32 * *
add int64 int64 int64
add native int int32 native int
add native int native int native int
add native int & &
add native int * *
add F F F
add & int32 &
add & native int &
add * int32 *
add * native int *

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

Aplica-se a