该指令的助记符、指令代码、操作数范围、程序步如下表2所示。
表2
比较指令素表
指令名称
|
助记符/功能号 |
操作数范围 |
程序步 |
[S1·][S2·] |
[D·] |
比较 |
FNC10
(D)CMP(P)
|
K
、 H KnX 、 KnY
、 KnM 、 KnS
T 、 C 、 D
、 V 、
Z |
Y
、 M 、
S |
16位-7步
32位-13步 |
比较指令 CMP
是将源操作数 [S1] 和 [S2]
的数据进行比较,结果送到目标操作数 [D] 中。
图7比较指令基本形式
说明如图所示:在 X0
断开,即不执行 CMP 指令时, M0~M2
保持 X0 断开前的状态。
数据比较是进行代数值大小比较(即带符号比较)。所有的源数据均按二进制处理。当比较指令的操作数不完整(若只指定一个或两个操作数),或者指定的操作数不符合要求(例如把
X 、 D 、 T 、
C 指定为目标操作数),或者指定的操作数的元件号超出了允许范围等情况,用比较指令就会出错。
|