标签: bit-manipulation bit-fields
我有一个8位变量,我想获得每个1位的索引。 对于00000011,索引只有1和2.要获得索引,我将使用一个简单的for循环,检查给定位置的位是否为1。
我的方法总是需要8次迭代。这可以更有效地完成吗?
答案 0 :(得分:0)
不确定它是否会加速你的问题,但是你可以在每次迭代时移动你的8位变量(如果它是无符号的)并测试早期循环退出的值是否为零