使用方法
- 打开页面默认就带示例:二进制输入框是「1010」,十进制输入框是「10」,结果区已经显示「十进制:10」,你不需要先输入任何东西。
- 把二进制串粘进二进制框,支持空格分隔的多字节写法(如「1010 0101」);在框里按回车或点「转为十进制」得到整数。
- 把十进制数粘进十进制框,按回车或点「十进制转二进制」得到对应的二进制串。
- 点「复制结果」把当前结果复制到剪贴板,便于粘到别处使用。
- 二进制里出现 0、1、空格以外的字符时,会点名当前非法字符提示你修正,不会硬凑出一个错误数字。
- 本页不联网、不写本地存储,刷新即回到默认示例,所有转换都在你自己的浏览器里完成,输入内容不会离开设备。
这个 比特转数字转换器 能解决什么
这个转换器 解决的是「二进制的 0 和 1 到底等于十进制的几」这个最基础的换算需求。人脑逐位加权很慢,手写还容易错位;本工具一次算清,并支持反向,便于核对与教学。
第一类用途是计算机基础教学。讲原码、补码、位权时,学生需要大量二进制转十进制的练习,本工具即时给出答案并能被手算验证,比翻答案册更直观。
第二类用途是协议与寄存器调试。读报文、看内存、分析标志位时,常要把一串比特变成可读数字,本工具兼容空格分隔的多字节,直接粘进去就能算。
第三类用途是位运算练习。刷题或写算法时,经常要在二进制与十进制之间来回看,本工具双向转换省去心算,也方便核对自己的实现。
第四类用途是硬件与嵌入式。嵌入式开发里配置寄存器常按位写,写完想确认十进制值,本工具一贴即得,减少低级出错。
第五类用途是考试与作业核对。学生做完进制转换作业,用本工具对照自己的手算结果,能快速发现哪一位加权写错。
第六类用途是趣味与科普。做二进制时钟、灯阵、编码科普时,常需要把模式串转成数字,本工具即贴即得,截图也方便。
第七类用途是数据标注与解析。处理位流、解析自定义编码时,需要把比特段还原成数值,本工具批量对照效率更高。
第八类用途是程序调试对照。开发二进制解析代码时,把样本串丢进来拿标准十进制,和自己的解析结果逐位比对,能更快定位偏移错误。
第九类用途是教材与刷题。计算机导论、软考、考研里进制转换是常考点,本工具既能给答案也能被手算验证,比翻答案册更适合边做边学,也能当随堂演示。
第十类用途是嵌入式位操作验证。写驱动或协议解析时,常需要确认某段比特的十进制含义,本工具即贴即得,减少低级出错,也方便把结果写进注释。
第十一类用途是色彩与编码无障碍的前置。做高对比配色或编码校验前,先用本工具把比特段还原成数值,再配合其他工具筛选,流程更顺。
值得一提的是,本页所有转换都在本地完成,不联网也不上传。你可以放心粘贴项目里的真实比特串,结果不会被任何服务器记录。
原理和变量
比特转数字转换器 的核心是「按权展开」,不含随机成分,因此同一段输入永远得到同一输出,可被手算复核。规则为:把二进制串去掉空格,从右往左第 k 位(k 从 0 开始)的权重是 2 的 k 次方,该位的贡献等于(位值乘 2 的 k 次方),把所有位贡献相加即十进制值。反向时,把十进制数不断除以 2 取余数,倒序排列余数即得二进制串。下面变量表说明各环节含义。
为什么要支持空格分隔?因为真实比特流常按字节分组书写(如「1010 0101」),允许空格能让用户直接粘贴而不必先清理。下面变量表方便你对照手算。
| 变量 | 含义 | 说明 |
|---|---|---|
| raw | 原始二进制串 | 含空格也可 |
| b | 去空格后的串 | 只含 0 和 1 |
| k | 位序号 | 从右往左 0 开始 |
| w | 权重 | 2 的 k 次方 |
| dec | 十进制值 | 各权值之和 |
完整示例
下面这组示例全部由页面算法原样得出,可直接对照你的手算。二进制「1010」:最右位 0 权 1,次右位 1 权 2,再次位 0 权 4,最左位 1 权 8,相加 8 加 2 得 10,所以十进制是 10。反向十进制 10 转二进制:10 除以 2 商 5 余 0,5 除以 2 商 2 余 1,2 除以 2 商 1 余 0,1 除以 2 商 0 余 1,倒序余数得「1010」。与上方结果区、下方卡片和对照表完全自洽,可逐位复核。
如果你想验证手算,只要把二进制从右往左按 1、2、4、8、16 加权相加,或把十进制不断除以 2 收集余数,必然和本工具一致。这套按权展开法也是你在不支持本页的环境里手动复现结果的可靠办法。
二进制:1010
按权展开
8+0+2+0=10
十进制:10
反向:1010
示例输入:二进制 = 1010 十进制:10 反向二进制:1010
二进制十进制对照表
下表列出常见二进制串对应的十进制值(共 14 行),前 12 行直接展示,点「加载更多」展开剩余项。你可以一键导出 CSV(带 BOM,Excel 直接认中文)或复制 TSV 粘进表格软件。表里所有结果都由本页同一逻辑得出,可复核。
| 二进制 | 十进制 |
|---|---|
| 1010 | 10 |
| 1111 | 15 |
| 0001 | 1 |
| 1000 | 8 |
| 0101 | 5 |
| 11111111 | 255 |
| 10101010 | 170 |
| 10000000 | 128 |
| 11001100 | 204 |
| 00110011 | 51 |
| 10100101 | 165 |
| 01100110 | 102 |
| 11110000 | 240 |
| 00001111 | 15 |
结果边界与错误提示
- 二进制串为空或只有空格时,提示「二进制串不合法:不能为空或只有空格」,页面不会自作主张编出一个零。
- 二进制串含 0、1、空格以外的字符时,会点名当前非法字符,例如「发现非法字符「x」,只能含 0、1 与空格」,方便你定位。
- 十进制数为空、不是整数或为负数时,提示「十进制数不合法:请输入非负整数」,位运算只处理非负整数。
- 十进制数极大(超过安全整数)可能失真,本工具对常见范围给出准确结果,超范围建议分段处理。
- 结果区与错误区都带 role="alert" 语义,内容一变就会被屏幕阅读器播报;所有转换本地完成,不联网也不写存储,刷新即还原默认示例。
- 同一段二进制永远得到同一十进制,这是按权展开的特性,并非缓存;改输入才会改结果。
- CSV 导出在文件头写入 UTF-8 BOM(\ufeff),Excel 打开中文不会乱码;TSV 复制是纯制表符分隔文本,粘进任意表格软件都会自动分列。
- 本工具只做进制互转,不对数值做任何含义解释;若需要补码或浮点解释,请另行处理。
常见问题
为什么 1010 等于 10 而不是一千零一十?
这里 1010 是二进制,各位权是 8、4、2、1,只有第 1 位和第 3 位为 1,即 8 加 2 得 10。若当十进制读才是一千零一十,二者进制不同。
支持带空格的写法吗?
支持。二进制框里「1010 0101」会被先去掉空格再计算,等于「10100101」,方便你按字节分组粘贴,不必预先清理。
能转多大的数?
常见整数范围都能准确转换;超过 JavaScript 安全整数(约 9e15)的值可能失真,建议对超长比特流分段处理或借助大数库。
十进制转二进制会和原串一致吗?
对「干净」的二进制(无多余前导零、无空格)反向转回能还原;带前导零或空格的写法反向后只保留数值等价的紧凑二进制。
我的数据会上传吗?
不会。所有计算只在浏览器本地进行,不联网、不写存储,刷新即还原默认示例,没有任何数据离开你的设备,可以放心粘真实比特串。
和计算器有什么区别?
系统计算器多隐藏换算细节;本工具明确按权展开,非法字符会具体报错,并配对照表,更适合学习与核对。
导出的 CSV 为什么带 BOM?
因为 Excel 打开无 BOM 的 UTF-8 文件时常把中文显示成乱码,BOM 能让 Excel 正确识别编码。TSV 复制走剪贴板不经文件,所以不需要 BOM。
能处理小数或负数吗?
本页只处理非负整数二进制与十进制互转;小数与负数需要额外的符号位与浮点规则,不在本工具范围内。
相关工具
- JSON 格式化工具:格式化与压缩 JSON,和本工具同属开发者工具。
- CSV 转 JSON 转换器:把表格数据在 CSV 与 JSON 之间互转。
- JSON 校验工具:校验 JSON 合法性并定位错误位置。