使用英语阅读

通过


OpCodes.Beq_S 字段

定义

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

public static readonly System.Reflection.Emit.OpCode Beq_S;

字段值

注解

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

格式 程序集格式 说明
2E <int8> beq.s target 在偏移量 target 处分支到目标指令(如果等于短格式)

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

  1. value1 被推送到堆栈上。

  2. value2 被推送到堆栈上。

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

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

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

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

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

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

适用于

产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0