区域比较指令也是一种常用的比较指令,它能够对指定的数据或常数是否在指定的上限值和下限值之间进行无符号比较,并用将状态标志(>、<、=)反映比较结果。区域比较zcp的梯形图符号如图所示。
图 区域比较指令zcp的梯形图符号
s是比较数据,t1和t2分别是下限值和上限值,它们的选取范围是cio、wr、hr、ar、t/c、dm、*dm、@dm、dr、常数等。
当区域比较指令的执行条件为on时,区域比较指令将比较数据s与上限值t2和下限值t1进行比较。比较结果对标志状态的影响见表。
表 cmp指令对状态标志的影响
使用zcp指令时需要注意,在zcp指令与访问p_gt、p_eq、p_lt状态标志的指令之间插入其他指令的情况下,有可能使这三个状态标志发生变化,因此编程时要确保在三个状态标志没有发生变化之前使用它们。