gpt4 book ai didi

c - 在二进制数中找到第一个 "1"

转载 作者:太空狗 更新时间:2023-10-29 15:18:05 26 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Efficient bitwise operations for counting bits or find the right|left most ones

有没有快速找到(32 位)二进制数中第一个 1 的方法?

例如如果我有数字 00000000 00000000 00000000 10000000

我想计算值“7”(或“24”,如果从另一侧读取),因为数字中的第一个零存储在从右边算起的第 7 位中。

有没有比

更快的方法
int pos=0;
int number = 127; //binary from above
while ((number>>pos) > 0) { pos++; }

?

也许是特定的 x86 汇编器指令?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com