文档库 最新最全的文档下载
当前位置:文档库 › AB-PLC指令集

AB-PLC指令集

AB-PLC指令集
AB-PLC指令集

AB PLC指令集

目录

一、位指令 (3)

1.检查是否闭合指令(XIC) (3)

2.检查是否断开指令(XIO) (3)

3.输出激励指令(OTE) (3)

4.输出锁存指令(OTL) (3)

5.输出解锁存指令(OUT) (4)

6.一次响应指令(ONS) (4)

7.上升沿触发指令(OSR) (4)

8.下降沿触发指令(OSF) (5)

二、计时器和计数器指令 (5)

1.延时导通计时器指令(TON) (5)

2.延时断开计时器指令(TOF) (6)

3.保持型计时器RTO (7)

4.加计数指令(CTU) (8)

5.减计数指令(CTD) (8)

6.复位指令(RES) (9)

三、比较指令 (10)

1.比较指令(CMP) (10)

2.等于指令(EQU) (11)

3.大于或等于指令(GEQ) (12)

4.大于指令(GRT) (12)

5.小于或等于指令(LEQ) (13)

6.小于指令(LES) (13)

7.极限比较指令(LIM) (13)

8.屏蔽等于指令(MEQ) (14)

9.不等于指令(NEQ) (15)

四、计算/算术指令 (15)

1 计算指令(CPT) (15)

2 加法指令(ADD) (17)

3 减法指令(SUB) (17)

4 乘法指令(MUL) (18)

5.除法指令(DIV) (19)

6 平方根指令(SQR) (19)

7 取反指令(NEG) (20)

五、传送/逻辑指令 (20)

1. 传送指令(MOV) (20)

2. 屏蔽传送指令(MVM) (21)

3. 位域分配(BTD) (22)

4. 清零指令(CLR) (23)

5. 按位与指令(AND) (23)

6. 按位或指令(OR) (24)

7. 按位异或指令(XOR) (25)

8. 按位非指令(NOT) (26)

AB PLC指令集

一、位指令

1.检查是否闭合指令(XIC)

XIC属输入指令,若相应位地址中是1(ON),则表示该指令的逻辑为真(true). 它类似于常开开关,如果位地址使用了输入映象表的位,则其状态必须与相应地址实际输入设备的状态相一致.XIC的指令形式如右图. 在该指令中,若发现数据表中Local:1:I.Date.0是ON状态(数据为1),则指令为真. Local:1:I.Date.0与本地机架1号槽的数据第0位对应,若输入

电路为真,则指令为真.

2.检查是否断开指令(XIO)

XIO属输入指令,若相应位地址的数据是1(ON),则表示该指令的逻辑为假(false),否则该指令的逻辑为真(true ),它类似于一常闭开关.XIO 的形式如右图. 在该指令中,若发现数据表中Local:1:I.Date.0是OFF(数据为0)则指令为真. Local:1:I.Date.0与本地机架1号槽的数据第0位对应,若输入电路为假则指令为真.

3.输出激励指令(OTE)

OTE属输出指令,用于控制存贮器中的位.若该位对应输出模块上的一个端子,则当该指令使能时,连接到该端子上的设备被接通,反之,设备不动作.若OTE指令前面的阶梯条件为真,则处理器使能OTE指令.

一条OTE指令如同一个继电器的线圈.OTE指令由它前面的输入指令控制,而继电器的线圈由硬触点控制.OTE的形式如右图.

在该指令中,若阶梯条件为真,则该指令使处理器把输出映象表中的Local:2:O.Date.0置为ON状态(数值为1);若阶梯条件为假,则置为OFF状态(数值为0).地址Local:2:O.Date.0与本地机架2槽的数据第0位对应

4.输出锁存指令(OTL)

OTL属输出指令,并且是保持型指令,也就是说,当阶梯条件是真时,OTL指令使处理器置位某一地址位,然后该位保持置位.此后即使阶梯条件变假,该位依然保持置位;若要复位,则需要在另一阶梯中使用解锁指令OUT对同一地址的位解锁.OTL的形式如右图.

在该指令中,若阶梯条件为真,则使处理器把输出映象表中的Local:2:O.Date.0置位,

直至用OUT对其解锁.

5.输出解锁存指令(OUT)

OUT常用以复位由OTL指令锁存的位.当阶梯条件为真时,对相应的位复位.以后即使阶梯条件变假,该位依然保持复位(置0),除非采用另一指令对该位重新置位.OTU的形式如右图.其含义与OTL对应.

6.一次响应指令(ONS)

ONS属输入指令,如果指令被使能时存储位清零,则ONS指令使能梯级的其余部分,如果被禁止或存储位置位,ONS指令禁止梯级的其余部分. 在扫描时,如果limit_switch_1是清零状态或storage_1是置位状态,则不影响阶梯.如果当扫描limit_switch_1是置位状态且storage_1是清零状态.则ONS指令置位storage_1 1且ADD指令的和数值就保持不变,必须在limit_switch_1再次从清零变为置位,和的值才增加.

7.上升沿触发指令(OSR)

OSR是一条输出指令,OSR指令根据存储位的状态置位或清零输出位.如果指令被使能时存储位清零,则OSR指令置位输出位.如果使能时存储位置位或禁止,则OSR指令清零输出位.

每次limit_switch_1从清零状态变为置位时,OSR指令置位output_bit_1并且ADD指令的和加5.只要limit_switch_1保持置位,和的值就不变.必须在limit_switch_1再次从清零变为置位,和的值才再增加.用户可以在多个梯级使用output_bit_1触发其他操作.

8.下降沿触发指令(OSF)

OSF指令是一条输出指令,OSF指令根据存储位的状态置位或清零输出位.当指令被禁止时存储位置位,OSF指令置位输出位.如果指令禁止或使能时存储位是清零状态,则OSF指令清零输出位.

每次limit_switch_1从置位状态变为清零时,OSF指令置位output_bit_1并且ADD指令的和加5.只要limit_switch_1保持清零,和的值就不变.必须在limit_switch_1再次从置位变为清零,和的值才再增加.用户可以在多个梯级使用output_bit_1触发其他操作.

二、计时器和计数器指令

1.延时导通计时器指令(TON)

利用TON指令在预置时间内计时完成去控制输出的接通或断开.当阶梯为真时,TON指令开始累加计时,直至下列条件之一发生为止:

●累加值等于预置值.

●阶梯变假.

●复位计时器.

●相关的SFC步变无效.

一旦阶梯条件变假,不论计时器是否到时,处理器都复位累加值. 可见每一个TON必须使用一个计时器元素(如 ),并提供下列参数:

(1) 预置值(Present):用以设置预定时间,以一个16位的整数值放置,范围0~32767.

(2) 累加值(Accum):是一个动态值,告诉用户目前已经延时的数值,计时器复位时,其值为

0.TON的操作及其相应的状态可用下表描述.

阶梯条件EN(有效位) TT(计时位) DN(完成位) 说明

假0 0 0 不计时

真 1 1 0 正在计时,累积

值<预置值

真 1 0 1 累积值>=预置

值,计时完成

用复位指令RES 0 0 0 ACC=0,PRE不

变,计时器复

TON指令举例

当 limit_switch_1被置位时,light_2接通180毫秒(timer_1计时).当timer_1的累加值.ACC达到180时, light_3接通.而且保持导通直到TON指令被禁止.如果在timer_1正计时时limit_switch_1断开,则关断light_2.

2.延时断开计时器指令(TOF)

TOF指令在阶梯条件变假时开始累加计时直至下列条件之一产生:

●累加值等于预置值.

●阶梯条件变为真

●相关的SFC步变无效. 一旦阶梯条件变真,不论计时器是否到时,处理器都复位累加值. 各参数的含义与TON相同.TOF的操作及其相应的状态可用下表描述.

一旦阶梯条件变真,不论计时器是否到时,处理器都复位累加值. 各参数的含义与TON相同.TOF的操作及其相应的状态可用下表描述.

阶梯条件EN(有效位) TT(计时位) DN(完成位) 说明

真 1 0 1 计时器不计时,ACC=0,计

时器复位

假0 1 1 正在计时,累积值<预置

假0 0 0 累积值=预置值,计时完

由于RES指令将对正在计时的计时器累加值,完成位和计时位进行复位,所以不可用RES复位指令复位TOF. TOF指令举例

当 limit_switch_2被清零时,light_2接通180毫秒(timer_2计时).当timer_2的累加值.ACC达到180时, light_2断开同时light_3接通.而且保持导通直到TOF指令被使能.如果在timer_2 正计时时limit_switch_2被置位,则关断light_2.

3.保持型计时器RTO

RTO指令在阶梯条件为真,开始计时,直到累加值达到预置值为止。下列条件发生时,RTO指令保持其累加值:

●阶梯变假。

●用户改变到编程方式。

●处理器出错或断电。

●相关的SFC步变无效。当处理器重新运行或阶梯变真时,计时器从保持的值开始续计时。由于保持累加值,所以在阶梯为真的时间内保持型计时器测量了累加时间。如果RTO阶梯条件变假后,要复位其累加值和状态位,用户需在另一条阶梯中编写具有相同地址的复位指令RES。

RTO指令举例:

当 limit_switch_1被置位时,light_1接通180毫秒(timer_3计时).当timer_3的累加值.ACC达到180时, light_1断开同时light_2接通.而且light_2保持导通直到timer_3被复位。如果在timer_3正计时时limit_switch_2被清零,则light_1保持导通。当limit_switch_2被复位时,RES指令复位timer_3(清零状态位和.ACC)。

4.加计数指令(CTU)

CTU指令是一条输出指令。

操作数:

操作数数据类型格式说明

计数器COUNTER 标签计数器结构

预置值DINT 立即数计数次数

累加值DINT 立即数计数器已经计数的次数,一般初始值为0

计数器结构:

助记符数据类型说明

.CU BOOL 加计数使能位—标识CTU指令

被使能

.DN BOOL 完成位—标识累加值

(.ACC)>=(预置值.PRE).OV BOOL 益出位—标识计数器超过上

限值2147483647。然后计数器

返回到-2147483648。并再开

始加计数

.PRE DINT 预置值—指定在指令置位完

成位(.DN)之前累加值所达

到的值

.ACC DINT 累加值—表示指令已经计数

的梯级转换的次数。

说明:CTU指令向上计数。如果指令被使能时加计数使能位(.CU)是清零状态,则CTU 指令使计数器加1。如果指令被使能位(.CU)是置位状态,或指令被禁止,CTU指令保持它的累加值(.ACC)。即使完成位(.DN)被置位之后,累加值也继续增加。如果要清零累加值,可以用一条引用同一计数器结构的RES指令,或写0值到计数器的累加值。

CTU指令举例:

limit_switch_1由禁止变为使能10次之后,完成位.DN被置位。并且接通light_1。如果limit_switch_1继续由禁止变为使能,则计数器counter_1继续增加它的计数值,且完成位.DN保持置位状态。当limit_switch_2被使能时,RES指令复位counter_1(清零状态位和.ACC值)并且关断light_1。

5.减计数指令(CTD)

CTD指令是一条输出指令。

操作数:

计数器COUNTER 标签计数器结构

预置值DINT 立即数计数次数

累加值DINT 立即数计数器已经计数的次

数,一般初始值为0 计数器结构:

助记符数据类型说明

.CD BOOL 减计数使能位—标识CTD指令

被使能

.DN BOOL 完成位—标识累加值(.ACC)

(预置值.PRE)

.UN BOOL 下出位—标识计数器超过下

限值-2147483648。然后计数

器返回到2147483647。在开始

减计数

.PRE DINT 预置值—指定在指令置位完

成位(.DN)之前累加值所达

到的值

.ACC DINT 累加值—表示指令已经计数

的梯级转换的次数。

说明:CTD指令向下计数。如果指令被使能时减计数使能位(.CD)是清零状态,则CTD 指令使计数值减1。如果指令被使能时减计数位(.CU)置位,或指令被禁止,则CTD指令保持它的累加值(.ACC)。即使完成位(.DN)被置位之后,累加值也继续减少。如果要清零累加值,可以用一条引用同一计数器结构的RES指令,或写0值到计数器的累加值。CTD 指令举例:

传送装置把零件带到缓存区。每进入一个零件,limit_switch_1被使能且counter_1的累加值加1。每取出一个零件limit_switch_被使能且counter_1的累加值减1。如果有100个零件进入缓存区(置位counter_1的完成位.DN),则关断传送装置A,在缓存区有空间之前,不用传送零件进入缓存区。

6.复位指令(RES)

RES指令是一条输出指令。

操作数:

结构TIMER CONTROL

标签复位的结构

COUNTER

三、比较指令

1.比较指令(CMP)

CMP是一条输入指令。

操作数:

操作数数据类型格式说明

表达式SINT INT DINT REAL 立即数标签表达式由被运算符分

隔的标签与/或立即

数组成

说明:CMP指令执行表达式中指定的算术运算比较。用户要执行的运算由表达式定义。用运算符,标签和立即数定义表达式。表达式中的复杂部分用圆括号()定义。

有效运算符

运算符说明最优数据类型

+ 加DINT,REAL

- 减/非DINT,REAL

* 乘DINT,REAL

/ 除DINT,REAL

= 等于DINT,REAL

< 小于DINT,REAL

<= 小于或等于DINT,REAL

> 大于DINT,REAL

>= 大于或等于DINT,REAL

<> 不等于DINT,REAL

** 指数DINT,REAL

ACS 反余弦REAL

AND 按位与DINT

ASN 反正弦REAL

ATN 反正切REAL

COS 余弦REAL

DEG 弧度转换成角度DINT,REAL

FRD BCD码转换成整数DINT

LN 自然对数REAL

LOG 以10为底的对数REAL

NOT 位补码DINT

OR 按位OR DINT

RAD 角度转换成弧度DINT,REAL

SIN 正弦REAL

SQR 平方根DINT,REAL

TAN 正切REAL

TOD 整数转换成BCD DINT

XOR 按位异或DINT

确定运算顺序指令按预先规定的顺序,而不必按用户列出的顺序,执行写入表达式的运算。可以通过把分组项组合到圆括号内来改变运算顺序,强制指令在执行其他运算之前执行圆括号内的运算,来改变运算顺序。同级运算顺序从左向右执行。

顺序运算符

1 ACS,ASN,ATN,COS,DEG,FRD,LN,LOG,RAD,SIN,SQR,TAN,TOD

2 **

3 -(取反),NOT

4 *,/

5 <,<=,>,>=,=

6 -(减),+

7 AND

8 XOR

9 OR

与专用比较指令相比,执行一条CMP指令速度稍慢而且占用更多的内存。CMP指令的优点是用户可以在一条指令内写入复杂的表达式。

如果CMP指令判断表达式为真,则梯级输出条件被设置为真。

如果输入一个没有比较运算符

的表达时,例如,Ivalue_1+ value_2,则指令计算表达式的数值:

如果表达式的值是梯级输出条件被设置为

非零值真

零值假

2.等于指令(EQU)

EQU指令是一条输入指令。

如果 value_1与value_2相等,则梯级输出条件被设置为真。

操作数:

操作数数据类型格式说明

源A SINT INT DINT REAL 立即数标签与源B比较的数值

源B SINT INT DINT REAL 立即数标签与源A比较的数值

说明:EQU指令测试源A的值与源B的值是否相等。REAL数据类型的数值很少绝对相等。如果必须确定两个REAL值是否相等,可以使用LIM指令。

3.大于或等于指令(GEQ)

GEQ指令是一条输入指令。

如果 value_1大于或等于value_2,则梯级输出条件被设置为真。

操作数

操作数数据类型格式说明

源A SINT INT DINT REAL 立即数标签与源B比较的数值

源B SINT INT DINT REAL 立即数标签与源A比较的数值

说明:GEQ指令测试源A的值是否大于或等于源B的值。

4.大于指令(GRT)

GRT指令是一条输入指令。

如果 value_1大于value_2,则梯级输出条件被设置为真。

操作数:

操作数数据类型格式说明

源A SINT INT DINT REAL 立即数标签与源B比较的数值

源B SINT INT DINT REAL 立即数标签与源A比较的数值

说明:GRT指令测试源A的值是否大于源B的值。

5.小于或等于指令(LEQ)

GEQ指令是一条输入指令。

如果 value_1小于或等于value_2,则梯级输出条件被设置为真。

操作数:

操作数数据类型格式说明

源A SINT INT DINT REAL 立即数标签与源B比较的数值源B SINT INT DINT REAL 立即数标签与源A比较的数值

6.小于指令(LES)

LES指令是一条输入指令。

如果 value_小大于value_2,则梯级输出条件被设置为真。

操作数:

操作数数据类型格式说明

源A SINT INT DINT REAL 立即数标签与源B比较的数值源B SINT INT DINT REAL 立即数标签与源A比较的数值说明:LES指令测试源A的值是否小于源B的值。

7.极限比较指令(LIM)

LIM指令是一条输入指令。

操作数:

操作数数据类型格式说明

立即数标签下限值

下限SINT INT DINT

REAL

源B测试SINT INT DINT

立即数标签测试值

REAL

立即数标签上限值

上限SINT INT DINT

REAL

说明:LIM指令比较测试值是否在下限和上限范围内。

LIM指令举例:例1

LowLimit<=HighLimit: 当0<=value<=100时,接通light_1.

例2

LowLimit>=HighLimit: 当value>=0或value<=-100时,接通light_1.

8.屏蔽等于指令(MEQ)

MEQ指令是一条输入指令。

操作数:

操作数数据类型格式说明

源SINT INT DINT 立即数标签与比较值比较的数值

屏蔽SINT INT DINT 立即数标签阻止或通过的位

比较SINT INT DINT 立即数标签与源值比较的数值

说明:MEQ指令比较通过屏蔽的源值和比较值的结果。

MEQ指令举例:

例1:

Value_1 :

0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 Mask_1:

1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 通过屏蔽的value_1:

0 1 0 1 0 1 0 1 1 1 1 1 * * * * Value_2 :

0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 0 Mask_1:

1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 通过屏蔽的value_2:

0 1 0 1 0 1 0 1 1 1 1 1 * * * *

9.不等于指令(NEQ)

NEQ指令是一条输入指令。

如果 value_1不等于value_2,则梯级输出条件被设置为真。

操作数:

操作数数据类型格式说明

立即数标签与源B比较的数值

源A SINT INT DINT

REAL

说明:NEQ指令测试源A的值与源B的值是否相等。

四、计算/算术指令

1 计算指令(CPT)

CPT指令是一条输出指令。

操作数:

操作数: 数据类型: 格式: 说明:

目的单元SINT INT DINT REAL 标签存储结果的标签

表达式SINT lNT DINT REAL 立即数标签表达式由运算符分开

的标签/立即数组成。说明:CPT指令执行表达式中定义的算术运算。当指令被使能时CPT指令计算表达式的数值并且存放结果于目的单元内。与其它算术指令运算相比CPT指令的运算速度稍慢而且占用更多的内存。CPT指令的优点是它允许用户在一条指令内输入复杂的表达式。

有效运算符:

运算符: 说明: 最优数据类型:

+ 加 D INT, REAL

- 减/非 D INT, REAL

* 乘 D INT, REAL

/ 除 D INT, REAL

** 指数(xtoy) D INT, REAL

ACS 反余弦REAL

AND 按位与DINT

ASN 反正弦REAL

ATN 反正切REAL

COS 余弦REAL

DEG 弧度转换成角度 D INT, REAL

FRD BCD码转换成整数DINT

LN 自然对数REAL

LOG 以10为底的对数REAL

NOT 位补码DINT

OR 按位OR DINT

RAD 角度转换成弧度 D INT, REAL

SIN 正弦REAL

SQR 平方根 D INT, REAL

TAN 正切REAL

TOD 整数转换成BCD DINT

XOR 按位异或DINT

确定运算顺序指令按预先规定的顺序而不必按用户列出的顺序执行写入表达式的运算。可以通过把分组项组合到圆括号内来改变运算顺序强制指令在执行其他运算之前执行圆括号内的运算来改变运算顺序。同级的运算顺序是从左向右执行。

顺序: 运算符:

1 ACS,ASN,ATN,COS,DEG,FRD,LN,LOG,RAD,S IN, SQR, TAN TOD

2 **

3 -(取反)NOT

4 *,/

5 -(减)+

6 AND

7 XOR

8 OR

执行:

条件: 动作:

预扫描梯级输出条件被设置为假。

梯级输入条件为假梯级输出条件被设置为假。

梯级输入条件为真指令计算表达式并存放结果于目的单元梯

级输出条件被设置为真。

算术状态标志: 影响算术状态标志

故障条件: 无

CPT指令举例:

当指令被使能时CPT指令计算value_1乘以5的结果,然后此结果被value_2除以7的结果除并把最后结果存放在result_1内.

2 加法指令(ADD)

ADD指令是一条输出指令。

操作数:

操作数数据类型格式说明

源A SINT INT DINT REAL 立即数标签与源B操作数相加的

值。

说明:ADD指令使源A操作数与源B操作数相加并存放计算结果于目的单元内。

执行:

条件: 动作:

预扫描梯级输出条件被设置为假。

梯级输入条件为假梯级输出条件被设置为假。

梯级输入条件为真目的单元=源A+源B,梯级输出条件被

设置为真。

算术状态标志: 影响算术状态标志

故障条件: 无

ADD指令举例:

当指令使能时ADD指令使float_value_1与float_value_2相加并存放结果于add _result 内。

3 减法指令(SUB)

SUB指令是一条输出指令。

操作数:

操作数数据类型格式说明

源A SINT INT DINT REAL 立即数标签减去源B操作数相加

的值。

源B SINT INT DINT REAL 立即数标签从源A操作数减去的

目的单元SINT INT DINT REAL 标签存放计算结果的标

签。

说明:SUB指令使源A操作数减去源B操作数并存放结果于目的单元内。

执行:

条件: 动作:

预扫描梯级输出条件被设置为假。

梯级输入条件为假梯级输出条件被设置为假。

梯级输入条件为真目的单元=源A一源B梯级输出条件被设

置为真。

算术状态标志: 影响算术状态标志

故障条件: 无

SUB指令举例:

当指令使能时SUB指令使float _value_1减去float_ value_2并存放结果于subtract_result内。

4 乘法指令(MUL)

MUL指令是一条输出指令。操作数:

操作数数据类型格式说明

源A SINT INT DINT

REAL

立即数标签被乘数

源B SINT INT DINT

REAL

立即数标签乘数

目的单元SINT INT DINT

REAL 标签存放计算结果的

标签。

说明:MUL指令使源A操作数与源B操作数相乘并存放计算结果于目的单元。

执行:

条件: 动作:

预扫描梯级输出条件被设置为假。

梯级输入条件为假梯级输出条件被设置为假。

梯级输入条件为真目的单元=源A*源B,梯级输出条件被

设置为真。

算术状态标志: 影响算术状态标志

故障条件: 无

MUL指令举例:

当指令使能时MUL指令使float_value_1与float_value_2相乘并存放结果于multjply_result内。

5.除法指令(DIV)

DIV指令是一条输出指令。

操作数:

操作数数据类型格式说明

源A SINT INT DINT

REAL

立即数标签被除数值。

源B SINT INT DINT

REAL

立即数标签除数值。

说明:DIV指令使源A操作数被源B操作数除并存放结果于目的单元。

执行:

条件: 动作:

预扫描梯级输出条件被设置为假。

梯级输入条件为假梯级输出条件被设置为假。

梯级输入条件为真目的单元=源A/源B, 梯级输出条件被

设置为真。

算术状态标志: 影响算术状态标志

故障条件: 无

DIV指令举例:

当指令使能时DIV指令使float_value_1被float_value_2除并存放结果于divide_result 内。

6 平方根指令(SQR)

SQR指令是一条输出指令。

操作数:

操作数数据类型格式说明

源SINT INT DINT

REAL 立即数标签计算该值的平方

根。

目的单元SINT INT DINT

REAL 立即数标签存放计算结果的

标签。

说明: SQR指令计算源操作数的平方根并存放计算结果于目的单元内。如果源操作数是负数则指令在计算源操作数的平方根之前先计算其绝对值。

执行:

条件: 动作:

预扫描梯级输出条件被设置为假。

梯级输入条件为假梯级输出条件被设置为假。

梯级输入条件为真目的单元=梯级输出条件被设置为真。

Destination=(Soure)1/2

算术状态标志: 影响算术状态标志

故障条件: 无

SQR指令举例:

当指令被使能时SQR指令计算value_1的平方根并存放计算结果于sqr_result内。

7 取反指令(NEG)

NEG指令是一条输出指令。

操作数:

操作数数据类型格式说明

源SINT INT DINT

REAL

立即数标签要取反的数值。

目的SINT INT DINT

REAL 立即数标签存放计算结果的

标签。

说明: NEG指令改变源操作数的符号并存放结果于目的单元。如果对一个负数取反则结果是正数。如果对正数取反则结果是负数。

执行:

条件: 动作:

预扫描梯级输出条件被设置为假。

梯级输入条件为假梯级输出条件被设置为假。

梯级输入条件为真目的单元=0一源操作数,梯级输出条件

被设置为真。

五、传送/逻辑指令

1. 传送指令(MOV)

MOV指令是一条输出指令。

操作数:操作数数据类型格式说明

源SINT INT DINT REAL 立即数标签被传送(复制)的数

目的单元SINT INT DINT REAL 立即数标签存放计算结果的标

签。

说明: MOV指令复制源操作数到目的单元。源操作数保持不变。

执行:

条件: 动作:

预扫描梯级输出条件被设置为假。

梯级输入条件为假梯级输出条件被设置为假。

梯级输入条件为真指令复制源操作数到目的单元。梯级输

相关文档