Beginner

位计数与位长度计算器

计算整数中有多少个 1-bit,测量其位长度,并立即判断它是否为 2 的幂。
Non-negative whole number

Input base

bits

Total bits for zero count (defaults to bit length)
Set bits (popcount)
4

Hamming weight of the binary representation

8

bits

Set bits (1s)

50%

Zero bits (0s)

50%

Zero bits
4
Bit length
8
Width used
8
Power of two
Binary
10011100
Hexadecimal
0x9C
Step by step
  1. 1

    Binary representation

    10011100
    Bit length: 8
  2. 2

    Set bits (1s counted)

    count of 1s in 10011100 = 4
结果仅为一般参考性的估算,并非专业建议——在依赖这些重要结果之前,请务必自行独立核实。 阅读完整免责声明.
快速解答

这个计算器是如何工作的?

Popcount 是整数中 1-bit 的数量(汉明重量),通过逐位移位和掩码操作求得。位长度是最高置位的位置。一个数是 2 的幂当且仅当其 popcount 等于 1。以十进制或二进制输入 n,即可立即查看全部四个值。

公式
popcount = n 中 1-bit 的数量;位长度 = 最高置位的位置;是 2 的幂 ⇔ popcount = 1
How this is calculated

以十进制或二进制形式输入非负整数 n。该值被解析为任意精度整数,因此非常大的数也不会溢出。Popcount(又称汉明重量)是 1-bit 的数量:反复用 n & 1 检查最低位,再用 n >> 1 右移,直到 n 为零,累加所有置位。

位长度是表示 n 所需的位数,等于最高置位的位置(n = 0 的位长度为 0)。可选的宽度字段设置固定字段大小 w;零位数量则为 w − popcount。若留空宽度,默认值为位长度,因此零位数仅反映数字本身内部的位。

一个数是 2 的幂当且仅当它只有一个置位,即 popcount = 1(因此 1, 2, 4, 8, 16, … 符合条件,但 0 不符合)。所有计数均为精确整数;若您提供的宽度小于位长度,将自动提升至位长度以确保零位数不为负。

常见问题

Popcount 是一个数的二进制表示中值为 1 的位的数量,又称汉明重量,广泛用于纠错编码、哈希和底层优化。

零没有置位,因此其位长度为 0,popcount 也为 0。每个正整数的位长度等于其最高置位的索引加一。

2 的幂在二进制中是一个 1 后跟若干 0(二进制的 1, 10, 100, 1000)。由于只有一个位被置位,其 popcount 恰好为 1,这是检验该属性最快捷的方法。

也称为

位计数
popcount
置位计数
汉明重量
位长度
二进制1的个数

APA

TG we-Calculate Editorial Team. (2026). 位计数与位长度计算器 [Online calculator]. TG we-Calculate. https://we-calculate.com/zh/calculator/popcount-bit-length-calculator

Chicago

TG we-Calculate Editorial Team. "位计数与位长度计算器." TG we-Calculate. 2026. https://we-calculate.com/zh/calculator/popcount-bit-length-calculator.

IEEE

TG we-Calculate Editorial Team, "位计数与位长度计算器," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/zh/calculator/popcount-bit-length-calculator

BibTeX

@misc{wecalculate_popcount_bit_length_calculator, title = {位计数与位长度计算器}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/zh/calculator/popcount-bit-length-calculator}}, year = {2026}, note = {TG we-Calculate} }

这个计算器对您有帮助吗?