OpCodes.Sub Field
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Subtracts one value from another and pushes the result onto the evaluation stack.
Assembly: mscorlib (in mscorlib.dll)
The following table lists the instruction's hexadecimal and Microsoft intermediate language (MSIL) assembly format, along with a brief reference summary:
Format | Assembly Format | Description |
|---|---|---|
59 | sub | Subtracts one value from another, returning a new numeric value. |
The stack transitional behavior, in sequential order, is:
value1 is pushed onto the stack.
value2 is pushed onto the stack.
value2 and value1 are popped from the stack; value2 is subtracted from value1.
The result is pushed onto the stack.
Overflow is not detected for integer operations (for proper overflow handling, see Sub_Ovf).
Integer subtraction wraps, rather than saturates. For example: assuming 8-bit integers, where value1 is set to 0 and value2 is set to 1, the "wrapped" result will be 255.
Floating-point overflow returns +inf (PositiveInfinity) or -inf (NegativeInfinity).
The following Emit method overload can use the sub opcode:
ILGenerator.Emit(OpCode)