位操作XOR的公式化解决

已锁定

yanxiao

版主

  • 帖子

    12316
  • 精华

    49
  • 被关注

    193

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

位操作XOR的公式化解决

941

1

2012-08-27 16:23:04

1、S7200没有提供对位的XOR操作指令,间接地用XORB、XORW、XORD分别对字节内、字内、双字内的位进行XOR操作。
2、XOR逻辑式:Y=(not A)*B + (not B)*A
逻辑功能描述为:当A和B取不同值时,输出为1,取相同值时,输出为0。
从公式看,A和B地位是互为对称的,可以把其中一个(比如A)定义为操作条件,另一个(比如B)定义为操作对象。
当A=0时:Y=B
当A=1时:Y=not B
3、S7200程序实现:
//STL写法,不能转成LAD,但是A只装载一次,若这个A是上面指令执行的结果,则非常方便。
LD A
LPS
NOT
A B
LDS 1
AN B
OLD
= B

// 可转成LAD。A装载2次。若A由上面指令执行的结果,则需要中间变量存一下。
LDN A
NOT
A B
LD A
AN B
OLD
= B

注:这里的A、B只是一个符号,使用时要替换成你自已的变量。
位操作XOR的公式化解决 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33295条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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