该指令的助记符、指令代码、操作数、程序步如表 1 所示。
指令名称 助记符 指令代码位数 操作数范围 程序步
S1(.) S2(.) D(.)
加法 ADD
ADD(P) FNC20
(16/32) K 、 H
KnX 、 KnY 、 KnM 、 KnS
T 、 C 、 D 、 V 、 Z KnY 、 KnM 、 KnS
T 、 C 、 D 、 V 、 Z ADD 、 ADDP…7 步
DADD 、 DADDP…13 步
表 1 加法指令的要素
ADD 加法指令是将指定的源元件中的二进制数相加,结果送到指定的目标元件中去。 ADD 加法指令的说明如图 1 表示。
图1 加法指令使用说明
当执行条件 X0 由 OFF → ON 时, [D10]+[D12] → [D14] 。运算是代数运算,如 5+ ( -8 ) =-3 。
ADD 加法指令有 3 个常用标志。 M8020 为零标志, M8021 为借位标志, M8022 为进位标志。
如果运算结果为 0 ,则零标志 M8020 置 1 ;如果运算结果超过 32767 ( 16 位)或 2147483647 ( 32 位),则进位标志 M8022 置 1 ;如果运算结果小于 -32767 ( 16 位)或 -2147483647 ( 32 位),则借位标志 M8021 置 1 。
在 32 为运算中,被指定的字元件是低 16 位元件,而下一个元件为高 16 位元件。
源和目标可以用相同的元件号。若源和目标元件号相同而采用连续执行的 ADD 、( D ) ADD 指令时,加法的结果在每个扫描周期都会改变。