回复:用S7-200怎么实现找出数据堆中的最小值和最大值

winter938

  • 帖子

    1550
  • 精华

    33
  • 被关注

    41

论坛等级:至圣

注册时间:2005-06-09

黄金 黄金 如何晋级?

发布于 2012-08-07 11:38:22

46楼

quote:以下是引用yanxiao在2012-07-26 10:53:00的发言:
我的方法是这样的:
1、在同一区,比如Q,将位编号,规则是Qx.y=x*8+y,所以Q0.0编号为0,Q1.1编号为9,依次类推。这个编号就当作位的间接地址(word);
2、拿到这个位的地址addr,先对它作ANDW,取出最低的3位(二进制),这个就是Qx.y中的y,对它DECO,就定位到字节内的某一位了,定义这个变量为bits;再对地址作SRW Addr,3,取出x,这个就是字节序号,合成指针&QB0+x,就可以定位这个“位”所在的字节,定义这个指针为ptr;
3、位的状态:movb *ptr,ac0、andb bits,ac0,查看sm1.1,就行了;
4、置位:orb bits,*ptr
5、复位:invb bits、andb bits,*ptr

赞一个,可以帮助理解西门子编址的意义,另第3条是否应该查看sm1.0?
工控爱好者
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33258条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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