基本信息
文件名称:可编程控制器应用(第三版)教学课件模块3-2:比较与传送指令.ppt
文件大小:152.5 KB
总页数:31 页
更新时间:2025-06-08
总字数:约5.13千字
文档摘要

模块3-2:比较与传送指令教学内容:主要简述比较与传送功能指令的格式及其使用方法。重点:讲述比较指令、区域比较指令、传送指令、取反传送指令、块传送指令、多点传送指令、触点比较指令和数据交换指令等8种指令的格式及其使用。难点:对区域比较指令和多点传送指令的应用理解。课时:2学时。1、比较指令在比较与传送的功能指令中,主要有比较指令、区域比较指令、传送指令、取反传送指令、块传送指令、多点传送指令、触点比较指令和数据交换指令等8种指令。1、比较指令1)比较指令格式比较指令(CMP)是将操作数1和操作数2中的数据进行比较,比较结果用目标元件的状态表示,或将源操作数[S1]和[S2]的数据进行比较,然后对目标操作数[D]进行相应的操作。比较指令格式:CMP+[S1.]+[S2.]+[D.]其中:CMP:助记符,[S1.]:源操作数1[S2.]源操作数2,[D.]:目标元件当前状态。1、比较指令2)使用说明:(1)源操作数1、2均按二进制数进行代数值大小比较(带符号比较)处理。(2)当比较指令的操作数不完整(若只指定一个或两个操作数),或指定操作数不符合要求(若把X、D、T、C指定为目标操作数),或指定操作数的元件号超出允许范围时,则所编写程序出错。(3)比较指令的正确应用,如图3-11所示。当X1为接通时,将常数K100与C20的当前值进行比较,若当前值K100,则M0置1,接通Y0;若当前值=K100,则M1置1,接通Y1;若当前值K100,则M2置1,接通Y2。X1为OFF时,程序不执行,M0~M2保持X0断开前的状态不变。1、比较指令3)比较指令应用:2、区域比较指令1)区域比较指令格式区域比较指令是将源操作数的内容进行比较后,将比较结果送到目标操作数。区间比较指令格式:ZCP+[S1.]+[S2.]+[S.]+[D.]式中:ZCP:助记符,[S.]、[S1.]、[S2.]和[D.]分别为源操作数和目标操作数。2)使用说明:(1)源操作数[S.]、[S1.]、[S2.]和目标操作数[D.]中数据都为二进制值,按代数值进行数据比较。2、区域比较指令(2)[S1.]、[S2.]:任意数据格式,且[S2.]≥[S1.],目标操作数[D.]只能取Y、M和S。(3)区间比较指令的正确理解和使用,如图3-12所示。当X0为ON时,把C30当前值与K100和K120相比较,若C30K100,M3置1;若K100≤C30≤K120,M4置1;若C30K120,M5置1。X0为OFF,则ZCP不执行,M3、M4、M5不变。3、区域比较指令3)区域比较指令应用3、传送指令1)传送指令的格式传送指令是将源数据传送到指定的目标数据寄存器。传送指令格式为:MOV+[S.]+[D.]式中:MOV:助记符,[S.]:源数据寄存器,[D.]:目标数据寄存器。2)使用说明(1)传送指令的功能是当执行条件X0=ON时,将源操作数内的数据(先自动转换成二进制数)传送到指定的目标操作数内,即[S]→[D];当执行条件X0断开时,指令不执行,数据保持不变。指令操作应用,如图3-13所示。3、传送指令在图(a)中,当X1为ON时,则将计数器C10的当前值读出并传送到数据寄存器D12中,MOV指令按脉冲方式执行,即X1在ON期间内,MOV指令只被执行一次;在图(b)中,当X2为ON时,将常数K100写入到寄存器D1中;当X3为ON时,将寄存器D1中数据设定为定时器T0的当前值。2)源操作数为所有数据类型,目标操作数是KnY、KnM、KnS、T、C、D、V、Z中某一种类型数据。3)程序运行时,对16位运算,则占5程序步,对32位运算,则占9个程序步。3、传送指令3)传送指令应用拓展:位传送指令SMOV位传送指令SMOV功能:将源操作数[S]中的二进制数据先转换成BCD码,然后再把BCD码按指定的位数(从K4开始的K2位)传送到目标操作数[D]的指定位(从K3开始的连续位)上,传送完毕后再转换成二进制数据。4、取反传送指令1)取反传送指令格式取反传送指令是将源操作数元件中的数据逐位取反后,传送到指定目标操作数元件。取反传送指令格式为:CML(P)+[S]+[D]式中:CML(P):助记符,[S]:源操作数,[D]:目标操作数。取反传送指令的使用方法,如图3-14所示。当X0为ON时,执行CML指令,即将D0的低4位取反后传送到Y3~Y0中。4、取反传送指令2)使用说明:(1)取反传送指令的源操作数[S]可取所有数据类型,目标操作数[D]只能取KnY、KnM、KnS、T、C、D、V、Z等某一种数