理论教育 字逻辑运算指令解析与优化介绍

字逻辑运算指令解析与优化介绍

时间:2023-06-18 理论教育 版权反馈
【摘要】:图3-93 WAND指令的应用及说明图3-94 DAND指令的应用梯形图模式如图3-94所示,程序处理如图3-95所示:图3-95 DAND指令的处理2.16位和32位数据逻辑或该指令的表达方式如图3-96所示。DXOR指令对D中所指定的软元件的32位数据和S中所指定的软元件的32位数据的各个位执行逻辑异或运算,并将运算结果存储在D所指定的软元件中。当指定了位软元件时,则在运算中位软元件所指定点之后的位将当做“0”处理。

字逻辑运算指令解析与优化介绍

1.16位和32位数据逻辑与(WAND(P)、DAND(P))

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

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

图3-91 WAND(P)与DAND(P)指令的表达

图中,

(S)表示进行逻辑与运算的源数据或者存储了数据的软元件起始号(16/32位二进制数据);

(D)表示将存储逻辑与运算结果的软元件起始号(16/32位二进制数据)。

WAND(P)指令是对(D)中所指定的软元件的16位数据和(S)中所指定的软元件的16位数据的各个位执行逻辑与运算,并将运算结果存储在(D)所指定的软元件中。当指定了位软元件时,则在运算中位软元件所指定点之后的位将当做“0”处理。

DAND(P)指令是对(D)中所指定的软元件的32位数据和(S)中所指定的软元件的32位数据的各个位执行逻辑与运算,并将运算结果存储在(D)所指定的软元件中。当指定了位软元件时,则在运算中位软元件所指定点之后的位将当做“0”处理。

注意:当设置3个数据与设置2个数据时,方法相同。

举例说明:

1)图3-92中,当XA为ON时,将D10中4位BCD值的十进制上的数字屏蔽为0。

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

图3-92 WAND(P)指令的应用及说明

2)图3-93中,当XA为ON时,下面程序对X10~X1B中的数据和D33中的数据进行逻辑乘运算,并将结果存储在D40中。

3)图3-94中,当X8变为ON时对D99~D100的数据和X30~X47的24位数据执行逻辑与运算,并将运算结果存储在D99~D100中。

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

图3-93 WAND(P)指令的应用及说明

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

图3-94 DAND(P)指令的应用

梯形图模式如图3-94所示,程序处理如图3-95所示:

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

图3-95 DAND(P)指令的处理

2.16位和32位数据逻辑或(WOR(P)、DOR(P))

该指令的表达方式如图3-96所示。

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

图3-96 WOR(P)和DOR(P)指令的表示(www.daowen.com)

图中,

(S)表示进行逻辑或运算的源数据或者存储了数据的软元件起始号(16/32位二进制数据);

(D)表示将存储逻辑或运算结果的软元件起始号(16/32位二进制数据)。

WOR(P)指令是对(D)中所指定的软元件的16位数据和(S)中所指定的软元件的16位数据的各个位执行逻辑或运算,并将运算结果存储在(D)所指定的软元件中。当指定了位软元件时,则在运算中位软元件所指定点之后的位将当做“0”处理。

DOR(P)指令是对(D)中所指定的软元件的32位数据和(S)中所指定的软元件的32位数据的各个位执行逻辑或运算,并将运算结果存储在(D)所指定的软元件中。当指定了位软元件时,则在运算中位软元件所指定点之后的位将当做“0”处理。

注意:设置3个数据和设置2个数据时,方法相同。

3.16位和32位数据逻辑异或(WXOR(P)、DXOR(P))

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

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

图3-97 WXOR(P)与DXOR(P)指令的表示

图中,

(S)表示进行逻辑异或运算的源数据或者存储了数据的软元件起始号(16/32位二进制数据);

(D)表示存储逻辑异或运算结果的软元件起始号(16/32位二进制数据)。

WXOR(P)指令是对(D)中所指定的软元件的16位数据和(S)中所指定的软元件的16位数据的各个位执行逻辑异或运算,并将运算结果存储在(D)所指定的软元件中。当指定了位软元件时,则在运算中位软元件所指定点之后的位将当做“0”处理。

DXOR(P)指令对D中所指定的软元件的32位数据和S中所指定的软元件的32位数据的各个位执行逻辑异或运算,并将运算结果存储在D所指定的软元件中。当指定了位软元件时,则在运算中位软元件所指定点之后的位将当做“0”处理。

注意:设置3个数据和设置2个数据时,方法相同。

4.16位和32位数据逻辑异或非(WXNR(P)、DXNR(P))

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

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

图3-98 WXNR(P)、DXNR(P)指令的表示

图中,

(S)表示逻辑异或非运算的源数据或者存储了数据的软元件起始号(16/32位二进制数据);

(D)表示将存储逻辑异或非运算结果的软元件起始号(16/32位二进制数据)。

WXNR(P)指令是对(D)中所指定的软元件的16位数据和(S)中所指定的软元件的16位数据的各个位执行逻辑异或非运算,并将运算结果存储在(D)所指定的软元件中。当指定了位软元件时,则在运算中位软元件所指定点之后的位将当做“0”处理。

DXNR(P)指令是对(D)中所指定的软元件的32位数据和(S)中所指定的软元件的32位数据的各个位执行逻辑异或非运算,并将运算结果存储在(D)所指定的软元件中。当指定了位软元件时,则在运算中位软元件所指定点之后的位将当做“0”处理。

注意:设置3个数据和设置2个数据时,方法相同。

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

我要反馈