有符号十进制转二进制补码和十六进制,支持 4、8、16、32、64 位,附原码反码补码三步推导,全程浏览器本地运算
- 本地处理
- 分类 开发运维
- 适合 格式化、校验、压缩或检查和代码相关的文本。
有符号范围 (8-bit): -128 … 127
推导过程
全程用 BigInt 在本地运算,64 位的值也精确,不上传任何东西。
这个工具能做什么
免费补码转换器,给计算机课、嵌入式固件和底层调试用。填一个有符号 十进制,就能读出 4、8、16、32 或 64 位下精确的补码二进制位串,以及 对应的十六进制。比如 -1 在 8 位是 11111111(0xFF),-128 是 10000000 (0x80),127 是 01111111(0x7F)。反向也行:贴一个二进制字,工具会 按你选的位宽把它当成有符号十进制读回来,所以 11111111 在 8 位是 -1 而不是 255。每次换算都展示课本里那套三步推导:原码、反码(逐位取反)、 再补码(加一)。当一个数超出所选位宽的有符号范围,工具会直接报错而 不是悄悄回绕,因为 -129 根本塞不进 8 位。每个输出都能一键复制。全部 是纯客户端 JavaScript,不上传任何东西,运算用安全整数处理,64 位的值 也保持精确。
工具细节
- 输入
- 文本 + 数值
- 页面会根据工具类型展示文本框、数值控件、文件选择或结构化输入。
- 输出
- 即时结果 + 复制
- 结果区优先给出可操作结果,支持项会显示复制、下载或可视化预览。
- 隐私
- 浏览器本地处理
- 主工具逻辑未发现外部 API 调用,输入通常留在当前标签页内处理。
- 保存 / 分享
- 可分享链接状态
- 关键设置会进入 URL,复制链接后别人能复现同一组参数。
- 性能预算
- 首屏 JS ≤ 9 KB
- 没有声明 WASM 依赖,适合快速打开和移动端使用。
- 适用场景
- 开发运维 · 程序员
- 分类和职业标签用于推荐相关工具、组织内链,并帮助用户快速判断是否适合当前任务。
怎么用
-
1. 输入
把内容粘贴或拖入工具面板。
-
2. 处理
点击按钮,在浏览器内本地处理,文件不上传。
-
3. 复制 / 下载
一键复制结果或下载到本地。
补码转换器 适合怎么用
适合穿插在写代码、查问题、做 Review、上线前的小任务里。
适合开发场景
- 格式化、校验、压缩或检查和代码相关的文本。
- 把片段整理好再放进文档、工单、提交或交接材料。
- 不切换工具,快速检查一个小 payload。
开发检查项
- 压缩、混淆这类不可逆处理,先对副本操作。
- 除非确认工具本地处理,不要粘贴密钥和敏感片段。
- 转换后的代码上线前,仍要跑自己的测试或 lint。
下一步可以接着做
这些入口会把当前任务接到更完整的工具链里。
真实使用场景
一步步核对计算机课作业
作业要 -37 的 8 位补码,你算出 11011011。填 -37,选 8 位,工具 会显示 37 是 00100101,反码 11011010,加一之后是 11011011 (0xDB)。这下你能看清哪一步对、哪一步错,而不是只被告知最终 答案不对。三行推导就是老师批改用的同一套方法,这里对上了就是 满分。
从调试器读出一个原始寄存器值
调试器把一个状态寄存器显示成 16 位字段里的 0xFF80,你要知道它 的有符号含义。切到二进制转十进制,贴上 1111111110000000,设成 16 位,读出 -128。不固定位宽的话,你可能误读成 65408 去追一个 根本不存在的 bug。工具把解释钉在寄存器大小上,你写进缺陷单里的 数字就是硬件里真正存的那个数。
在定结构体之前先给整型字段定大小
你在排一个报文结构体,温度读数可能到 -40。int8 够不够?在 8 位下 填 -40:能塞下,是 11011000。再试最坏情况 -200,工具标成越界, 告诉你 int8 最低到 -128,你得用 int16。这里花五秒,省掉一个只在 生产环境最冷那天才冒头的字段溢出 bug。
不用白板讲清符号位
给一个班演示为什么 10000000 是 -128 而不是 128,你设成 8 位,把 128 和 -128 都填一遍。128 超出有符号范围被标出来,而 -128 正好 落在 10000000 上。再切到正的 127,显示 01111111,比负数那端的 触达少一格。这种并排让有符号范围的不对称变得具体,是静态幻灯片 做不到的,而且网址能原样打开这个演示。
常见踩坑
在有符号的语境里却把二进制字当无符号读。11111111 无符号是 255,但在 8 位补码里是 -1。一定要先固定位宽,再决定有符号还是无符号,因为同一串数字代表两个不同的数。
忘了加一这步,停在了反码。把 5(00000101)逐位取反得到 11111010,那是 -6 不是 -5。补码是取反再加一,所以 -5 是 11111011。漏掉加一是手算时最常见的一个差一错误。
以为正负范围是对称的。8 位的值能下到 -128,却只能上到 127 而不是 128。因为零占了正数那侧一个位置,能存成负数的量级比正数大一,这点常常让范围检查出错。
隐私说明
这里的每一步,原码那行、取反、加一和范围检查,都是浏览器标签页里运行 的纯 JavaScript。十进制、二进制字和位宽都不会发往服务器,也不记录任何 东西。唯一要知道的:分享链接会把你的输入和位宽写进查询字符串,所以把 链接粘到聊天里,对方服务器的访问日志会留下这些值。涉及保密硬件的数值, 请用复制按钮粘贴文本,而不是分享网址。
常见问题
类似工具组合
做你这行的人, 还会一起用这些。