Export (0) Print
Expand All
Expand Minimize

OpCodes.Sub Field

Subtracts one value from another and pushes the result onto the evaluation stack.

Namespace:  System.Reflection.Emit
Assembly:  mscorlib (in mscorlib.dll)

public static readonly OpCode Sub

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:

  1. value1 is pushed onto the stack.

  2. value2 is pushed onto the stack.

  3. value2 and value1 are popped from the stack; value2 is subtracted from value1.

  4. 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)

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Community Additions

ADD
Show:
© 2014 Microsoft