如何判断一个寄存器里位接通的数量

需要判断一个寄存器里位接通的数量,之后用数值表示出来。例如MW20=35时,对应的二进制为100011,里面的位接通数量为三个,用3来表示赋值给MW22。也就是把MW35的数值怎么能转换成表示内部位数接通数量的一个数值?

最佳答案

寄存器值mod 2,然后判断结果是否为1,为1则int变量加1,然后再把寄存器的值除以2(右移一位)再mod 2判断结果。重复16次,最后那个int变量保存的就是为1的个数。

提问者对于答案的评价:
谢谢!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc232898.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月1日 下午1:25
下一篇 2018年12月1日 下午1:25

相关推荐