计算数字中的位数

标签 c assembly bit-manipulation bitmask

<分区>

重复:

Best algorithm to count the number of set bits in a 32-bit integer?


假设您有一个数字。有没有什么方法可以不使用迭代来计算该数字的二进制表示中等于 1 的位?我的意思是,有什么方法可以使用一些按位运算符和掩码在固定时间内完成。我需要适用于 32 位和 64 位架构的解决方案。差点忘了,C语言需要,汇编也不错。

最佳答案

关于计算数字中的位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/843737/

相关文章:

c - Endianness:这个宏在做什么?

c - 使用双倍数据速率的数据简单比较

assembly - ARM 汇编分支到寄存器或内存内部的地址

Android 在上传到服务器之前减小图像大小

c - 这个程序是如何工作的?

c++ - 打包修整的 C 结构

使用引用参数从 c 调用汇编函数

c - 如何在汇编中遍历矩阵?

c - 打印最后没有填充 0 的字符串

java - 按字节操作交换字符串中的数字