理论教育 如何使用比较指令?

如何使用比较指令?

时间:2023-06-18 理论教育 版权反馈
【摘要】:表3-8 单个指令的比较3)当十六进制常数被S1和S2指定时,或最高位为1的数字值(8~F)被指定时,该值作为一个负的二进制数值被读取,用于比较。图3-53 比较指令的应用图3-54 32位二进制数据比较指令的表达方式其中,S1、S2表示存储比较数据或软元件的起始号。

如何使用比较指令?

1.BIN16位数据比较

指令表达方式如图3-52所示。

978-7-111-36359-0-Chapter03-62.jpg

图3-52 比较指令表达方式

图中,▭表示指令符号=、<>、>、<=、<、>=;S1,S2表示存储比较数据或软元件的起始号(BIN16)。后续出现与上述相同。

该指令功能如下:

1)把由S2指定的软元件的16位二进制数据和由S1指定的软元件的16位二进制数据当做常开触点,并执行比较运算。

2)单个指令的比较运算结果见表3-8。

表3-8 单个指令的比较

978-7-111-36359-0-Chapter03-63.jpg

3)当十六进制常数被S1和S2指定时,或最高位(b15)为1的数字值(8~F)被指定时,该值作为一个负的二进制数值被读取,用于比较。

举例:图3-53为比较二进制数值100和D3中的数据,并且当D3中的数据小于100时导通。(www.daowen.com)

2.32位二进制数据比较(D=、D<>、D>、D<=、D<、D>=)

指令表达方式如图3-54所示。

978-7-111-36359-0-Chapter03-64.jpg

图3-53 比较指令的应用

978-7-111-36359-0-Chapter03-65.jpg

图3-54 32位二进制数据比较指令的表达方式

其中,S1、S2表示存储比较数据或软元件的起始号(32位二进制数据)。功能方面同16位数据的比较功能,唯一不同的是用于比较的数据应当通过32位指令进行指定(DMOV指令等)。如果是通过16位指令(MOV指令等),结果不正确。

举例:图3-55的程序为比较D0及D1和D3及D4中的数据,并且当D0及D1中的数据等于或者小于D3及D4中的数据时Y33导通。

978-7-111-36359-0-Chapter03-66.jpg

图3-55 32位二进制数据比较指令的应用

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈