在单片机里面,除法运算是非常消耗CPU资源的,并且还得添加除法库,太浪费flash了。
我们可以让长度, len = 2的n次方,比如2、4、8、16、32。 这时候模的运算,就可以变成与的操作: len = 8; w % 8 就是 w & (8-1)
↑二进制的妙用
假设
w=8
情况1:
w(8)%8=0
情况2:
8 & (8-1) =0
1000 & 0111
↑所以对应了为什么len要2的n次方
版权声明:本文为weixin_51089092原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。