Windows Dev Center

The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

OpCodes.Ceq Field

Compares two values. If they are equal, the integer value 1 (int32) is pushed onto the evaluation stack; otherwise 0 (int32) is pushed onto the evaluation stack.

[Visual Basic]
Public Shared ReadOnly Ceq As OpCode
public static readonly OpCode Ceq;
public: static OpCode Ceq;
public static var Ceq : OpCode;


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
FE 01 ceq Pushes 1 if value1 equals value2; else pushes 0.

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; value1 is added to value2.
  4. The result is pushed onto the stack.

The ceq instruction compares value1 and value2. If value1 is equal to value2, then 1 (of type int32) is pushed on the stack. Otherwise 0 (of type int32) is pushed on the stack.

For floating-point number, ceq will return 0 if the numbers are unordered (either or both are NaN). The infinite values are equal to themselves.

The following Emit constructor overload can use the ceq opcode:

  • ILGenerator.Emit(OpCode)


Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

OpCodes Class | OpCodes Members | System.Reflection.Emit Namespace

© 2015 Microsoft