OpCodes.Beq 字段

定义

如果两个值相等,则将控制转移到目标指令。

public: static initonly System::Reflection::Emit::OpCode Beq;
public static readonly System.Reflection.Emit.OpCode Beq;
 staticval mutable Beq : System.Reflection.Emit.OpCode
Public Shared ReadOnly Beq As OpCode 

字段值

注解

下表列出了指令的十六进制和 Microsoft 中间语言 (MSIL) 程序集格式,以及简短的参考摘要:

格式 程序集格式 说明
3B <int32> beq target 如果两个值相等,则分支到偏移 target 量处的目标指令。

堆栈过渡行为(按顺序排列)是:

  1. value1 被推送到堆栈上。

  2. value2 被推送到堆栈上。

  3. value2value1 从堆栈中弹出;如果 value1 等于 value2,则执行分支操作。

如果 value1 等于 value2,则beq指令将控制权转移到指定的目标指令。 效果与执行 ceq 指令后跟 brtrue 分支到特定目标指令的效果相同。 目标指令表示为从当前指令后面的指令开头的 4 字节有符号偏移量。

可接受的操作数类型封装如下:

如果目标指令具有一个或多个前缀代码,则控制权只能转移到这些前缀中的第一个。

此指令无法控制传入和移出 trycatchfilterfinally 块的控制传输, (此类传输受到严格限制,必须改用 Leave 指令) 。

以下 Emit 方法重载可以使用 beq 操作码:

适用于