cmp (比较) 指令
用途
以代数方式比较两个通用寄存器的内容。
语法
| 位数 | VALUE |
|---|---|
| 0-5 | 31 |
| 6-8 | BF |
| 9 | / |
| 10 | L |
| 11-15 | RA |
| 16-20 | 经常预算 |
| 21-30 | 0 |
| 31 | / |
请参阅 固定点比较指示信息的扩展助记符 以获取更多信息。
描述
驼峰 指令将通用寄存器 (GPR) 的内容 RA 与作为带符号整数的 GPR 经常预算 的内容进行比较,并在条件寄存器字段 BF中设置其中一个位。
BF 可以是 "条件寄存器字段 0-7"; 程序员可以指定哪个 "条件寄存器字段" 将指示操作的结果。
条件寄存器字段 BF 的位解释为如下所示:
| 项 | 描述 | |
|---|---|---|
| Bit | 名称 | 描述 |
| 0 | LT | (RA) < SI |
| 1 | GT | (RA)> SI |
| 2 | EQ | (RA) = SI |
| 3 | SO | SO , OV |
驼峰 指令具有一个语法格式,并且不会影响固定点异常寄存器。 除非程序员将条件寄存器字段 0 指定为 BF ,否则它不受影响。
参数
| 项 | 描述 |
|---|---|
| BF | 指定条件寄存器 7 0-7 , 0 指示比较结果。 |
| L | 对于 32 位子集体系结构而言,必须设置为 0。 |
| RA | 指定操作的源通用寄存器。 |
| 经常预算 | 指定操作的源通用寄存器。 |
示例
以下代码将 GPR 4 和 GPR 6 的内容作为带符号整数进行比较,并设置条件寄存器字段 0 以反映操作的结果:
# Assume GPR 4 contains 0xFFFF FFE7.
# Assume GPR 5 contains 0x0000 0011.
# Assume 0 is Condition Register Field 0.
cmp 0,4,6
# The LT bit of Condition Register Field 0 is set.