S7-300任意位(大于32位)循环左移(转)

Automann

  • 帖子

    6168
  • 精华

    138
  • 被关注

    308

论坛等级:至圣

注册时间:2004-12-23

普通 普通 如何晋级?

发布于 2011-04-10 10:08:31

39楼

本帖转自http://blog.gkong.com/blog.asp?name=liaochangchu
作者已给出了用双字循环左移指令实现8位循环移位、64位循环移位和双字范围内任意位连续循环左移若干位的程序。
下面介绍大于32位的任意位循环左移1位的思路。以64位+N位为例,首先每个双字分别循环左移1位,每个双字的最高位移到它的最低位。然后将每个双字的最低位传送到它左边的双字的最低位(相当于移位前的最高位移到它左边的双字的最低位),将最高的双字的第N+1位(移位前的第N位)传送到最右边的双字的最低位。
如果需要连续左移若干位,可以用循环程序(LOOP)来实现。

追求完美
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。