OpCodes.Add Campo

Definição

Adiciona dois valores e envia o resultado por push 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 do campo

Comentários

A tabela a seguir lista o formato de assembly hexadecimal e Microsoft linguagem intermediária (MSIL) da instrução, juntamente com um breve resumo de referência:

Formato Formato de assembly Description
58 adicionar Adiciona dois valores numéricos, retornando um novo valor numérico.

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

  1. value1 é empurrado para a pilha.

  2. value2 é empurrado para a pilha.

  3. value2 e value1 são estourados da pilha; value1 é adicionado a value2.

  4. O resultado é enviado por push para a pilha.

O estouro não é detectado para operações de inteiro (para tratamento de estouro adequado, consulte Add_Ovf).

Encapsulamentos de adição inteiro, em vez de saturados. Por exemplo, supondo números inteiros de 8 bits em value1 que está definido como 255 e value2 é definido como 1, o resultado encapsulado é 0 em vez de 256.

O estouro de ponto flutuante retorna +inf (PositiveInfinity) ou -inf (NegativeInfinity).

Os tipos de operando aceitáveis e seu tipo de dados de resultado correspondente são listados na tabela abaixo. Se não houver nenhuma entrada para uma combinação de tipo específica (por exemplo, int32 e float; int32 e int64), ela será uma MSIL (linguagem intermediária Microsoft) inválida e gerará um erro.

operando tipo value1 tipo value2 tipo de resultado
adicionar int32 int32 int32
adicionar int32 native int native int
adicionar int32 & &
adicionar int32 * *
adicionar int64 int64 int64
adicionar native int int32 native int
adicionar native int native int native int
adicionar native int & &
adicionar native int * *
adicionar F F F
adicionar & int32 &
adicionar & native int &
adicionar * int32 *
adicionar * native int *

A sobrecarga do método Emit a seguir pode usar o add opcode:

Aplica-se a