二进制⇋十进制Binary ⇋ Decimal
二进制与十进制双向一键互转,BigInt 任意精度无丢失,支持 0b 前缀、空格/下划线分隔、4 位分组与按字节对齐,学进制换算、算子网掩码、看位标志更快。数据全程不上传。
工具介绍
3 段详细说明二进制⇋十进制是面向开发者与学生的一站式进制换算工具,集双向互转、4 位分组、按字节对齐、0b 前缀识别于一体。粘贴 0/1 串或十进制整数,一键得到结果,子网掩码、位标志、寄存器配置一眼看清。
所有计算都在浏览器内存中完成,数据不上传任何服务器。基于原生 BigInt 任意精度整数计算,超过 2⁵³ 的大数也精确无浮点误差,几百位的二进制串都能转。
相比 Windows 计算器的「程序员模式」,本工具无需安装、打开网页即用,支持移动端、一键复制紧凑结果、⌘+↵ 快捷键,适合考试验算、临时调试、写文档时快速查数。
基础知识 · 二进制
位权 · 2 的幂二进制(Binary)是以 2 为基数的进位计数制,只用 0 和 1 两个数字。理解以下 6 个要点,进制换算就不需要死记硬背:
binary逢二进一,只用 0 和 10 或 1 两种状态,逢二进一。计算机电路的高/低电平天然对应 1/0,所以二进制是计算机的「母语」,存储、运算、传输最终都以它呈现。positional位权展开(按权相加)1011 = 1×8 + 0×4 + 1×2 + 1×1 = 11。反向转换则用「除 2 取余、倒序读」。prefix常见书写前缀0b1010(0b 前缀)、(1010)₂(下标记法)。本工具可直接粘贴 0b 前缀写法,空格与下划线分隔自动忽略。nibble半字节 nibble:4 位一组0000~1111 ↔ 0~F。按 4 位分组阅读长二进制串是程序员的通用习惯,也是本工具默认的展示方式。powers常用 2 的幂2⁸=256、2¹⁰=1024、2¹⁶=65536、2³²≈42.9 亿。记住这四个,估算 IP 数量、内存大小、取值范围不用翻表。unsigned无符号整数与补码11111111),位数约定不同结果不同,需在指定位宽(8/16/32/64 位)下理解。1、2、4、8、16、32、64、128。把为 1 的位权相加即得十进制。128 64 32 16 | 8 4 2 1 —— 8 位一个字节,高半字节 + 低半字节,各对应 1 位十六进制。11010010 = 128 + 64 + 16 + 2 = 210;反向除 2 取余、倒序排列可得二进制。使用说明
4 步快速入门使用场景
5 个真实案例位权展开、除 2 取余的进制换算题一键验算,结果与思路对照,作业考试不丢分。
把 255.255.255.0 每段转二进制,数清网络位 / 主机位,划网段、算可用地址不再手抖。
读 status & 0b00001111 这类位标志,按 4 位分组后每个开关一目了然。
对照芯片手册逐位填配置字,「8 位对齐」正好凑成一个寄存器字节。
设计 ACL / Feature Flag 时规划每一位的含义,十进制值与位布局对照确认。
常见问题
10 个问答二进制转十进制怎么算?
按位权展开:每一位乘以对应 2 的幂再相加,如 1011 = 8 + 0 + 2 + 1 = 11。也可以直接粘贴到本工具一键得出结果。
十进制转二进制怎么算?
经典「除 2 取余」:不断除以 2 记下余数,直到商为 0,把余数倒序读出即是二进制。大数建议直接用本工具,避免手算出错。
支持多大的数?
任意长度。基于 BigInt 任意精度整数计算,超过 2⁵³(约 9×10¹⁵)也精确无浮点误差,几百位的二进制串都能转。
支持负数吗?
不支持。本工具按无符号非负整数转换;负数在计算机中按补码存储,必须先约定位宽(8/16/32/64 位)才有唯一表示,超出整型换算工具的范围。
支持小数吗?
不支持。二进制小数(如 0.1 无法精确表示)涉及浮点精度问题,建议使用专门的浮点数分析工具。
0b 前缀、空格、下划线会报错吗?
不会。0b1010、1101 0010、1101_0010 都能正确识别;非法字符提示只针对真正混入的字符(如 2、a)。
「4 位分组」会影响复制结果吗?
不会。分组与补零只作用于展示;点「复制」得到的始终是紧凑无空格的标准结果,可直接粘贴进代码。
为什么推荐 4 位分组?
4 位二进制恰好对应 1 位十六进制(nibble):0000~1111 ↔ 0~F。分组后与 hex 互查、人工核对都更快。
「8 位对齐」是做什么的?
把结果补零到 8 的倍数(一个字节),适合寄存器配置、子网计算、串口协议等按字节阅读数据的场景。
数据会上传服务器吗?
不会。转换在浏览器内存中完成,输入内容不上传任何服务器。可断网使用,PWA 缓存资源后离线同样可用。
相关工具
计算分类数据来源
隐私优先BigInt 任意精度整数(二进制逐位 v = v×2 + bit,十进制 BigInt.prototype.toString(2)),无第三方依赖、无浮点误差、无位数上限。