42
42
101010
42 = 32 + 8 + 2,所以 32、8、2 对应的位是 1,其余是 0。
输入一个整数,即可看到它的二进制形式,下方会显示每一次除以 2 的过程。默认打开的是 42,也就是 101010。
最后更新
Coddy 让你在浏览器里编写真实代码来学习:互动课程、即时反馈,卡住时还有 AI 帮忙。
每次除以 2,余数都是 0 或 1,这个余数就是从右往左的下一位。以 42 为例:42 ÷ 2 = 21 余 0,21 ÷ 2 = 10 余 1,10 ÷ 2 = 5 余 0,5 ÷ 2 = 2 余 1,2 ÷ 2 = 1 余 0,1 ÷ 2 = 0 余 1。把余数从下往上读,得到 101010。这就是常说的“除 2 取余法”。
对于较小的数,还有第二种方法很好用:找出不超过它的最大的 2 的幂(42 对应 32),减去它,再对剩下的数重复这个过程(10,然后是 8,然后是 2)。在用到的每个幂下面写 1,其余写 0。
对于你输入的任何整数,转换器都会展示除法过程,并使用 BigInt 计算,所以很大的数值也能保持精确。
42
101010
42 = 32 + 8 + 2,所以 32、8、2 对应的位是 1,其余是 0。
255
11111111
255 比 256 小 1,所以 256 以下的每一位都是 1:八个 1。
192
11000000
192 = 128 + 64。像 255.255.255.192 这样的子网掩码,就是这样一个字节一个字节地读的。
1024
10000000000
1024 是 2¹⁰,所以它是一个 1 后面跟十个 0。
1010。10 = 8 + 2,所以 8 和 2 对应的位是 1。
1100100。100 = 64 + 32 + 4。
bin(42) 返回 '0b101010',format(42, 'b') 返回不带前缀的 '101010'。在 JavaScript 中,用 (42).toString(2)。你可以在 Python 在线编辑器里运行这些转换。数一数除以 2 多少次商才变成 0,这个次数就是位数。42 需要 6 位,255 需要 8 位。