Share via


OpCodes.Add Pole

Definice

Sečte dvě hodnoty a nasdílí výsledek do zásobníku vyhodnocení.

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 

Hodnota pole

Poznámky

Následující tabulka uvádí šestnáctkový formát sestavení instrukce a formát sestavení MSIL (Microsoft Intermediate Language) spolu se stručným přehledem referencí:

Formát Formát sestavení Description
58 add Sečte dvě číselné hodnoty a vrátí novou číselnou hodnotu.

Přechodné chování zásobníku v sekvenčním pořadí je:

  1. value1 se nasdílí do zásobníku.

  2. value2 se nasdílí do zásobníku.

  3. value2 a value1 se vynořily ze zásobníku; value1 jsou přidány do value2.

  4. Výsledek se vloží do zásobníku.

U celočíselných operací se nezjistil přetečení (správné zpracování přetečení najdete v tématu Add_Ovf).

Integer sčítání, spíše než nasycení. Například za předpokladu, že 8bitová celá čísla, kde value1 je nastavena na 255 a value2 je nastavena na 1, zabalený výsledek je 0 místo 256.

Přetečení s plovoucí desetinou čárkou vrátí +inf (PositiveInfinity) nebo -inf (NegativeInfinity).

Přijatelné typy operandů a jejich odpovídající datový typ výsledku jsou uvedeny v následující tabulce. Pokud neexistuje žádná položka pro konkrétní kombinaci typů (například int32 a float; int32 a int64), jedná se o neplatný jazyk MSIL (Microsoft Intermediate Language) a vygeneruje chybu.

Operand typ hodnota1 Typ hodnoty2 typ výsledku
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 *

Následující Emit přetížení metody může použít add opcode:

Platí pro