4数据处理.ppt
《4数据处理.ppt》由会员分享,可在线阅读,更多相关《4数据处理.ppt(57页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、4、数据处理、运算指令及应用n n本章要点 数据传送、字节交换、字节立即读写、移位、转换指令的介绍、应用及实训 算术运算、逻辑运算、递增/递减指令的介绍、应用及实训 表的定义、填表指令、表取数指令、填充指令、表查找指令的介绍5.1 数据处理指令5.1.1 数据传送指令1.字节、字、双字、实数单个数据传送指令MOVLADSTLMOVB IN,OUTMOVW IN,OUTMOVD IN,OUTMOVR IN,OUT【例5-1】将变量存储器VW10中内容送到VW100中。LD I0.1MOVW VW10,VW1002.字节、字、双字、实数数据块传送指令BLKMOVLADSTLBMB IN,OUT,N
2、BMW IN,OUT,NBMD IN,OUT,N操作数及数据类型IN:VB,IB,QB,MB,SB,SMB,LB。OUT:VB,IB,QB,MB,SB,SMB,LB。数据类型:字节IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW。OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AQW。数据类型:字IN/OUT:VD,ID,QD,MD,SD,SMD,LD。数据类型:双字N:VB,IB,QB,MB,SB,SMB,LB,AC,常量;数据类型:字节;数据范围:1-255功能使能输入有效时,即EN=1时,把从输入IN开始的N个字节(字、双字)传送到以输出OUT开始的N个字节(
3、字、双字)中【例5-2】程序举例:将变量存储器VB20开始的4个字节(VB20-VB23)中的数据,移至VB100开始的4个字节中(VB100-VB103)。LD I0.0BMB VB20,VB100,4程序执行后,将VB20VB23中的数据30、31、32、33送到VB100VB103。执行结果如下:数组1数据 30 31 32 33数据地址 VB20 VB21 VB22 VB23块移动执行后:数组2数据 30 31 32 33数据地址 VB100 VB101 VB102 VB1035.1.2 字节交换、字节立即读写指令1.字节交换指令:字节交换指令用来交换输入字IN的最高位字节和最低位字节
4、。LADSTL功能及说明SWAP IN功能:使能输入EN有效时,将输入字IN的高字节与低字节交换,结果仍放在IN中IN:VW,IW,QW,MW,SW,SMW,T,C,LW,AC。数据类型:字【例5-3】字节交换指令应用举例LD I0.1SWAP VW50程序执行结果:指令执行之前VW50中的字为:D6 C3指令执行之后VW50中的字为:C3 D62.字节立即读写指令LADSTL功能及说明BIR IN,OUT功能:字节立即读 IN:IBOUT:VB,IB,QB,MB,SB,SMB,LB,AC。数据类型:字节BIW IN,OUT功能:字节立即写IN:VB,IB,QB,MB,SB,SMB,LB,AC
5、,常量OUT:QB 数据类型:字节字节立即读指令(MOV-BIR)读取实际输入端IN给出的1个字节的数值,并将结果写入OUT所指定的存储单元,但输入映像寄存器未更新。字节立即写指令从输入IN所指定的存储单元中读取1个字节的数值并写入(以字节为单位)实际输出OUT端的物理输出点,同时刷新对应的输出映像寄存器。5.1.3 移位指令及应用举例1.左、右移位指令LADSTLSLB OUT,NSRB OUT,NSLW OUT,NSRW OUT,NSLD OUT,NSRD OUT,N说明:在STL指令中,若IN和OUT指定的存储器不同,则须首先使用数据传送指令MOV将IN中的数据送入OUT所指定的存储单元
6、。如:MOVB IN,OUTSLB OUT,N 2.循环左、右移位指令LADSTLRLB OUT,NRRB OUT,NRLW OUT,NRRW OUT,NRLD OUT,NRRD OUT,N在STL指令中,若IN和OUT指定的存储器不同,则须首先使用数据传送指令MOV将IN中的数据送入OUT所指定的存储单元。如:MOVB IN,OUTSLB OUT,N【例5-4】程序应用举例,将AC0中的字循环右移2位,将VW200中的字左移3位。【例5-5】用I0.0控制接在Q0.0Q0.7上的8个彩灯循环移位,从右到左以0.5s的速度依次点亮,保持任意时刻只有一个指示灯亮,到达最左端后,再从右到左依次点亮
7、。LD SM0.1 /首次扫描时MOVB 1,QB0 /置8位彩灯初态LD I0.0 /T37产生周期为 AN T37 0.5s的移位脉冲 TON T37,+5 LD T37 /每来一个脉冲RLB QB0,1 彩灯循环左移1位 3.移位寄存器指令(SHRB)SHRB DATA,S-BIT,N(1)移位寄存器指令SHRB将DATA数值移入移位寄存器。EN为使能输入端,连接移位脉冲信号,每次使能有效时,整个移位寄存器移动1位。DATA为数据输入端,连接移入移位寄存器的二进制数值,执行指令时将该位的值移入寄存器。S_BIT指定移位寄存器的最低位。N指定移位寄存器的长度和移位方向,移位寄存器的最大长度
8、为64位,N为正值表示左移位,输入数据(DATA)移入移位寄存器的最低位(S_BIT),并移出移位寄存器的最高位。(2)DATA和S-BIT的操作数为I,Q,M,SM,T,C,V,S,L。数据类型为:BOOL变量。N的操作数为VB,IB,QB,MB,SB,SMB,LB,AC,常量。数据类型为:字节。【例5-6】移位寄存器应用举例。LD I0.0EUSHRB I0.1,M10.0,+4【例5-7】用PLC构成喷泉的控制。用灯L1L12分别代表喷泉的12个喷水注。(1)控制要求:按下起动按钮后,隔灯闪烁,L1亮0.5秒后灭,接着L2亮0.5秒后灭,接着L3亮0.5秒后灭,接着L4亮0.5秒后灭,接
9、着L5、L9亮0.5秒后灭,接着L6、L10亮0.5秒后灭,接着L7、L11亮0.5秒后灭,接着L8、L12亮0.5秒后灭,L1亮0.5秒后灭,如此循环下去,直至按下停止按钮。如图5-8所示。(2)I/O分配 输入 输出(常开)起动按钮:I0.0 L1:Q0.0 L5、L9:Q0.4(常闭)停止按钮:I0.1 L2:Q0.1 L6、L10:Q0.5 L3:Q0.2 L7、L11:Q0.6 L4:Q0.3 L8、L12:Q0.7分析:应用移位寄存器控制,根据喷泉模拟控制的8位输出(Q0.0Q0.7),须指定一个8位的移位寄存器(M10.1M11.0),移位寄存器的S-BIT位为M10.1,并且移
10、位寄存器的每一位对应一个输出。T38构成0.5s产生一个机器扫描周期脉冲的脉冲发生器第八个脉冲到来时M11.0置位为1,同时通过与T37并联的M11.0常开触点使M10.0置位为1T37(M10.0)延时0.5s导通一个扫描周期第八个脉冲到来时M11.0置位为1,同时通 过 与 T37并 联 的 M11.0常 开 触 点 使M10.0置位为15.1.4 转换指令n n转换指令是对操作数的类型进行转换,并输出到转换指令是对操作数的类型进行转换,并输出到指定目标地址中去。转换指令包括数据的类型转指定目标地址中去。转换指令包括数据的类型转换、数据的编码和译码指令以及字符串类型转换换、数据的编码和译码
11、指令以及字符串类型转换指令。指令。n n不同功能的指令对操作数要求不同。类型转换指不同功能的指令对操作数要求不同。类型转换指令可将固定的一个数据用到不同类型要求的指令令可将固定的一个数据用到不同类型要求的指令中,包括字节与字整数之间的转换,整数与双整中,包括字节与字整数之间的转换,整数与双整数的转换,双字整数与实数之间的转换数的转换,双字整数与实数之间的转换,BCD,BCD码与码与整数之间的转换等。整数之间的转换等。1.字节与字整数之间的转换LADSTLBTI IN,OUTITB IN,OUT操作数及数据类型IN:VB,IB,QB,MB,SB,SMB,LB,AC,常量,数据类型:字节OUT:V
12、W,IW,QW,MW,SW,SMW,LW,T,C,AC,数据类型:整数IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,常量,数据类型:整数OUT:VB,IB,QB,MB,SB,SMB,LB,AC,数据类型:字节功能及说明BTI指令将字节数值(IN)转换成整数值,并将结果置入OUT指定的存储单元。因为字节不带符号,所以无符号扩展ITB指令将字整数(IN)转换成字节,并将结果置入OUT指定的存储单元。输入的字整数0至255被转换。超出部分导致溢出,SM1.1=1。输出不受影响2.字整数与双字整数之间的转换LADSTLITD IN,OUTDTI IN,OUT操作数及数据类型I
13、N:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,常量,数据类型:整数OUT:VD,ID,QD,MD,SD,SMD,LD,AC,数据类型:双整数IN:VD,ID,QD,MD,SD,SMD,LD,HC,AC,常量,数据类型:双整数OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,数据类型:整数功能及说明ITD指令将整数值(IN)转换成双整数值,并将结果置入OUT指定的存储单元。符号被扩展DTI指令将双整数值(IN)转换成整数值,并将结果置入OUT指定的存储单元。如果转换的数值过大,则无法在输出中表示,产生溢出SM1.1=1,输出不受影响3.双整数与实数之间的转
14、换LADSTLDTR IN,OUTROUND IN,OUTTRUNC IN,OUT功能及说明DTR指令将32位带符号整数IN转换成32位实数,并将结果置入OUT指定的存储单元 ROUND指令按小数部分四舍五入的原则,将实数(IN)转换成双整数值,并将结果置入OUT指定的存储单元TRUNC(截位取整)指令按将小数部分直接舍去的原则,将32位实数(IN)转换成32位双整数,并将结果置入OUT指定存储单元4.BCD码与整数的转换LADSTLBCDI OUTIBCD OUT功能及说明BCD-I指令将二进制编码的十进制数IN转换成整数,并将结果送入OUT指定的存储单元。IN的有效范围是BCD码 0至99
15、99I-BCD指令将输入整数IN转换成二进制编码的十进制数,并将结果送入OUT指定的存储单元。IN的有效范围是0至9999LAD和STL指令中,IN和OUT的操作数地址相同。若IN和OUT操作数地址不是同一个存储器,对应的语句表指令为:MOV IN OUT BCDI OUT 5.译码和编码指令LADSTLDECO IN,OUTENCO IN,OUT操作数及数据类型IN:VB,IB,QB,MB,SMB,LB,SB,AC,常量。数据类型:字节OUT:VW,IW,QW,MW,SMW,LW,SW,AQW,T,C,AC。数据类型:字IN:VW,IW,QW,MW,SMW,LW,SW,AIW,T,C,AC,
16、常量。数据类型:字OUT:VB,IB,QB,MB,SMB,LB,SB,AC。数据类型:字节功能及说明译码指令根据输入字节(IN)的低4位表示的输出字的位号,将输出字的相对应的位,置位为1,输出字的其他位均置位为0编码指令将输入字(IN)最低有效位(其值为1)的位号写入输出字节(OUT)的低4位中【例5-8】译码编码指令应用举例。LD I1.0DECO AC2,VW40 /译码ENCO AC3,VB50 /编码若(AC2)=2,执行译码指令,则将输出字VW40的第二位置1,VW40中的二进制数为2#0000 0000 0000 0100;若(AC3)=2#0000 0000 0000 0100,
17、执行编码指令,则输出字节VB50中的码为2。6.七段显示译码指令LADSTL功能及操作数SEG IN,OUT功能:将输入字节(IN)的低四位确定的16进制数(16#0F),产生相应的七段显示码,送入输出字节OUTIN:VB,IB,QB,MB,SB,SMB,LB,AC,常量。OUT:VB,IB,QB,MB,SMB,LB,AC。IN/OUT的数据类型:字节【例5-9】编写显示数字0的七段显示码的程序。LD I0.1SEG 0,AC1程序运行结果为AC1中的值为16#3F(2#0011 1111)。7.ASCII码与十六进制数之间的转换指令LADSTLATH IN,OUT,LENHTA IN,OUT
18、,LEN操作数及数据类型IN/OUT:VB,IB,QB,MB,SB,SMB,LB。数据类型:字节LEN:VB,IB,QB,MB,SB,SMB,LB,AC,常量。数据类型:字节。最大值为255功能及说明ASCII至HEX(ATH)指令将从IN开始的长度为LEN 的ASCII字符转换成十六进制数,放入从OUT开始的存储单元HEX至ASCII(HTA)指令将从输入字节(IN)开始的长度为LEN的十六进制数转换成ASCII字符,放入从OUT开始的存储单元5.1.5 天塔之光的模拟控制实训1.实训目的(1)掌握移位寄存器指令的应用方法(2)用移位寄存器指令实现天塔之光控制系统(3)掌握PLC的编程技巧和
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据处理
限制150内