OpCodes.Add 字段
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将两个值相加并将结果推送到计算堆栈上。
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) 程序集格式,以及简短的参考摘要:
格式 | 程序集格式 | 说明 |
---|---|---|
58 | add | 添加两个数值,返回一个新的数值。 |
堆栈过渡行为(按顺序排列)是:
value1
被推送到堆栈上。value2
被推送到堆栈上。value2
和value1
从堆栈中弹出;value1
添加到value2
。结果将推送到堆栈上。
未检测到整数操作溢出, (正确溢出处理,请参阅 Add_Ovf) 。
整数加法换行,而不是饱和。 例如,假设 8 位整数,其中 value1
设置为 255 且 value2
设置为 1,则包装结果为 0 而不是 256。
浮点溢出返回 +inf
(PositiveInfinity
) 或 -inf
(NegativeInfinity
) 。
下表列出了可接受的操作数类型及其相应的结果数据类型。 如果特定类型组合没有条目 (例如 int32
和 float
和 int32
int64
) ,则它是无效的 Microsoft 中间语言 (MSIL) 并生成错误。
操作数 | value1 类型 | value2 类型 | 结果类型 |
---|---|---|---|
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 |
* |
以下 Emit 方法重载可以使用 add
操作码: