OpCodes.Add 欄位

定義

相加兩個值,並將結果推送到評估堆疊中。

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 

欄位值

備註

下表列出指令的十六進位及 Microsoft 中介語言(MSIL)組合格式,並附有簡短參考摘要:

Format 組裝格式 Description
58 新增 新增兩個數值,返回一個新的數值。

堆疊的過渡行為依序為:

  1. value1 被推到堆疊上。

  2. value2 被推到堆疊上。

  3. value2value1 堆疊中彈出; value1 加入 value2

  4. 結果會被推送到堆疊上。

整數運算無法偵測溢位(關於適當的溢位處理,請參見 Add_Ovf)。

整數加法是包裹而非飽和。 例如,假設 8 位元整數,其中 value1 設為 255, value2 且 設為 1,則包裹後的結果是 0 而非 256。

浮點溢位回傳 +infPositiveInfinity)或 -infNegativeInfinity)。

可接受的運算元類型及其對應的結果資料類型列於下表。 若某特定類型組合沒有條目(例如 int32float;int32int64),則為無效的Microsoft中介語言(MSIL),並產生錯誤。

運算元 值1類型 value2 類型 結果類型
新增 int32 int32 int32
新增 int32 native int native int
新增 int32 & &
新增 int32 * *
新增 int64 int64 int64
新增 native int int32 native int
新增 native int native int native int
新增 native int & &
新增 native int * *
新增 F F F
新增 & int32 &
新增 & native int &
新增 * int32 *
新增 * native int *

以下 Emit 方法的超載可使用操作 add 碼:

適用於