1.概述
四则运算指令通过四则运算实现数据的传送、变化及其他控制功能。四则运算指令表现形式及功能见表8-13。
2.指令在使用时,有以下五点共性要求
1)指令中操作数的软元件可使用情况:
①成为[S1]、[S2]的对象软元件有:KnX、KnM、KnY、KnS、T、C、D、V、Z、K、H。
表8-13 四则运算表现形式及功能简介表
②成为[D]的对象软元件有:KnM、KnY、KnS、T、C、D、V[1]、Z[1]。
注:乘法和除法指令中目标操作数不能用V,而Z也只能用于16位操作数。
2)四则运算指令执行形式有连续和脉冲两种形式。
3)四则运算指令执行时可执行16位和32位的数据,执行32位的操作在指令前加D。
4)四则运算指令在运算时是以代数方式进行运算的。
如:16+(-8)=8;8-4=4;5×(-8)=-40;16÷(-4)=-4
5)四则运算指令在执行时要考虑标志位的动作和数值的关系见表8-14。动作关系如图8-102所示。
表8-14 标志位的动作和数值的关系
图8-102 标志位的动作和数值变化关系
3.各指令使用介绍
(1)BIN加法ADD
图8-103所示为BIN加法表现形式,指定的源元件中的二进制数相加,结果送到指定的目标元件。每个数据的最高bit作为符号位(0为正,1为负)。
图8-103 BIN加法表现形式
在32bit运算中,用到字元件时,被指定的字元件是低16bit元件,而其下一个元件即为高16bit元件。为了避免重复使用某些元件,建议指定操作元件时用偶数元件号。
源和目标可以用相同的元件号,若源和目标元件号相同而且采用连续执行的ADD/(D)ADD指令时,加法的结果在每个扫描周期都会改变。如果是用脉冲执行的形式则只在脉冲接通时执行,如图8-104所示。
另外:加法经常用到的还有加1指令(INC),如图8-105所示,指定[D.]的数据内容加1,图中D10的内容在每一个脉冲时加1。
图8-104 加法指令脉冲执行
图8-105 加1指令表现形式
图8-104所示的程序和图8-105所示的程序在加1时的效果是一样的。
【例8-18】有一台投币洗车机,用于司机清洗车辆,司机每投入1元可以使用10min,其中喷水时间为5min。
参考程序如图8-106所示,图中X0为投币检测,X1为喷水按钮,X2为手动复位按钮,Y0为喷水电磁阀。D10为喷水时间,D11为设定使用时间。
图8-106 例8-18参考程序(www.xing528.com)
图8-107 位的减法指令操作
(2)BIN减法SUB
图8-107中表示32位减法指令操作,图中[S1·]指定元件中的数减去[S2·]指定元件中的数,结果送到[D·]指定的目标软元件中。
另外:减法经常用到的还有减1指令(DEC),如图8-108所示,指定[D.]的数据内容加1,图中D10的内容在每一个脉冲时数据内容减1。图8-107和图8-108在减1时用法是相同且效果相等。
图8-108 减1指令操作
【例8-19】编制倒计时程序,显示定时器T1的当前值。参考程序如图8-109所示。
图8-109 例8-19参考程序
(3)BIN乘法MUL图8-110和图8-111分别表示16位和32位乘法指令操作,图中[S1·]指定元件中的数乘以[S2·]指定元件中的数,结果送到[D·]指定的目标中。
图8-110 16位乘法指令
图8-111 32位乘法指令
(4)BIN除法DIV图8-112和图8-113分别表示16位和32位除法指令操作,图中[S1·]指定元件中的数除以[S2·]指定元件中的数,结果送到[D·]指定的目标中。
当除数为负数时,商为负;当被除数为负数时,有余数时则余数为负。
图8-113 32位除法指令操作
图8-114 INC指令
(5)加1和减1指令
BIN加1指令(INC)用于将(D20)中的数值加1,结果仍存放在(D20)中。如图8-114所示:当X0=1时,D20中的数值加1。
同ADD指令相比,INC指令不会使标志位M8022置位,16位运算时,+32767再加1就变为-32768,32位运算时,+2147483467再加1就变为-2147483468。
BIN减1指令(DEC)用于将(D20)中的数值减1,结果仍存放在(D20)中。如图8-115所示:当X0=1时,D20中的数值加1。
图8-115 DEC指令
16位运算时,-32768再减1就变为32767,注意这一点和减法指令也是不一样的。其标志M8021不动作。
在32位运算时,-2147483648再减1就变为2147483647,标志M8021也不动作。
【例8-20】控制一台三相异步电动机,要求电动机按正转5s→停止5s→反转5s→停止5s的顺序并自动循环运行,直到按按钮复位停止运行。
参考程序如图8-116所示,图中X0为保持性开关。
图8-116 例8-20参考程序
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。