欢迎来到西门子工业支持中心网站!
欢迎来到西门子工业支持中心网站!
悬赏:10西币 | 解决时间:2018-12-11 14:00
产品版区:
SIMATIC S7-300(F)/S7-400(F/H/FH)
a4
a4 - 中级工程师  第10级
各位大侠,这一段SCL程序功能是把一个字里的二进制为“1”的数量计算出来,我看不太明白,希望有高手指点一下。
最佳答案
回答者:
看雪001
回答时间:2018-12-10 18:49
提问者对于答案的评价:
多谢Haohaobb 和 看雪001的解答, Haohaobb回答最快,看雪001解释的更详细和准确。
知道MOD指令的意思吧?
mod 2 相当于判断最低位是0还是1;
A/2实际就是把这个数据右移一位。
先判断0位是1还是0,是1加1;然后左移1位,1位变0位,再判断,
再左移,再判断,循环16次,把每个位都移到0位上使用mod判断一下是1还是0.。。
循环移位
这个应该是个FB吧,不太可能是FC吧,。不过楼主应该是学高级语言的吧,思维模式好像。再就是如果把程序中#D:=0;去掉结果就大不一样了啊。
现赠您1张1847体验会员卡,可免费领取,畅学1847会员内容,是否领取?
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!