循环及移位指令.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
循环及移位指令.ppt

项目:彩灯的循环控制 利用基本指令完成编程,程序如下: 利用步进指令完成编程任务,参考程序如下: 1.助记符、指令代码 循环右移:ROR,DROR , RORP,DRORP。(16/32) 循环左移:ROL,DROL , ROLP,DROLP。(16/32) 2.源、目标操作数: D : KnY,KnM,KnS,T,C,D,V,Z N:K,H=[D.]的位数。 (3)执行图5-45,当X0闭合,D10的值为245。图5-46给出运行的情况,图(a)中,当X1闭合1次,执行ROR指令1次,D10右移3位。此时D10=-24546。同时进位标志M8022为“1”。当X1再闭合1次,再执行ROR指令1次,D10右移3位。此时D10=-11261。同时进位标志M8022为“1”。图(b)中,当X2闭合,执行ROL指令1次,D10的各位左移2位,此时D10=980。同时进位标志M8022为“0”。当X2再闭合,再执行ROL指令1次,D10的再左移2位,此时D10=3920。同时进位标志M8022为“0”。 (2)每执行一次RCL指令,目标元件(D)中的位带进位循环左移n位,最后被移出的位放入进位标志M8022中。在运行下一次RCR指令时,M8022中的位首先进入目标元件中。 (3)图5-48执行情况如图5-49所示。图(a)为带进位循环右移4位,执行情况如下: X0接通, D1=0000 0000 1111 1111=255, M8022=0 X1接通第1次, D1=1110 0000 0000 1111=-8177, M8022=1 X1接通第2次, D1=1111 1110 0000 0000=-512, M8022=1 X1接通第3次, D1=0001 1111 1110 0000=8160, M8022=0 图(b)为带进位循环左移4位,执行情况如小: X0接通, D1=0000 0000 1111 1111=255, M8022=0 X2接通第1次, D1=0000 1111 1111 0000=4080, M8022=0 X2接通第2次, D1=1111 1111 0000 0000=-256, M8022=0 X2接通第3次, D1=1111 0000 0000 0111=-4089, M8022=1 5.5.3 位右移和位左移(SFTR,SFTL) 1. 位右移和位左移指令的助记符和功能,见表5-22所示: (3) 图5-51解释了图5-50的动作情况。 对图(a),如果X0=X1=1,则当X10闭合一次,X1、X0的状态移入M7、M6,此时M7、M6均为1。当X10再闭合一次,M7、M6的状态移入M5、M4,此时M5、M4为1,而M7、M6复位为零,一直到X10第五次闭合,其状态溢出。 图(b)的情况与图(a)相似,不同的是图(b)是向左移。 总结 移位控制指令包含:移位:SFTR,SFTL;循环移位:ROR,ROL;字移位:WSFR,WSFL;先入先出(FIFO):SFWR,SFWL。 移位指令为非循环移位,数据移出部分丢失,数据移入部分从其它数据获得。 循环移位 :数据在字或双字内的移位,是一种环形的移动。 字移位:字数据在存储空间中的位置调整等功能。 先入先出FIFO:数据管理。 例5-8 某生产过程如下:按起动按钮,电机M1启动工作,延时3s,M1停止,同时电机M2起动运行。前进碰行程开关SQ1,M2停止,M3起动。前进碰行程开关SQ2,M3停止,M4起动。M4运行3s,M1、M2、M3、M4同时工作,又延时3s后全部停止。试用SFTL指令编程。 例5-9 用SFTL指令编写广告灯光闪烁电路,如例4- 6 所示。要求有连续,单周,单步控制。 5.5.4字右移、字左移(WSFR,WSFL) 5.5.5 先进先出(FIFO)(SFWR,SFWD) 1.FIFO命令的助记符和功能如表2-24所示: 例5-10 用SFWR和 SFWD指令分别将100、200、300、400、500五个数据存入到数据栈中,再顺序读出。 按题意,所编的程序如图5-60所示。 5.3.4 移位传送(SMOV) 1.移位传送指令的助记符和功能如表5-10所示: 3. 说明 (1) SMOV指令带5个参数,它的意义是:将源(S.)的二进制数(16位二进制数)以BCD码表示从其第m1起将低m2位的B

文档评论(0)

只做精品 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档