二进位转十进位
在浏览器里把二进位转成十进位,采用任意精度运算,并显示各种暂存器宽度下的有号读法。
在你的浏览器中运行
请输入一个数字。
多长都精确
二进位字符串很快就会变得很长——一个 64 比特的值就是 64 个字元——而那个长度正是用一般数字做 的转换器开始返回近似值的地方。
这里用的是任意精度整数,200 位的二进位字符串也能精确换算。
0b 前缀可有可无,数字之间的空白或底线会被忽略,所以大家实际会写的分组形式——
0b1010 1010 或 1010_1010——贴上就能用。
有号读法
一串二进位本身并没有说明暂存器有多宽、是不是有号的,而这两件事都会改变那些比特的意义。
11111111 当成无号字节是 255,当成有号的则是 −1。转换会把两者都列出来,在每一个
数值放得进去的宽度上,这样你就不必自己动手算二补数。
而那通常正是一开始要读二进位的理由:一个状态暂存器、一组权限遮罩,或某个最高位是符号位的 压缩栏位。
比特数的计算
显示的比特数是数值本身需要的比特数,不是任何容器的宽度。255 需要 8 比特,256 需要
9 比特。
当你要确认某个值塞不塞得进某个地方时,这个区别就有意义了。一个需要 33 比特的数字放不进 32 比特的栏位,不管它的十进位形式看起来如何。
没有任何上传
在这个页面里转换。