进制转换 在线二进制八进制十六进制互转换算
二进制、八进制、十进制、十六进制整数互转,支持负数和大数,同时显示全部进制结果,适合学习、编程、面试练习和考试准备等场景。
更新于 2026-08-26
相关工具
功能特性
- 在二进制、八进制、十进制和十六进制之间转换
- 即时转换,输入即显示
- 支持十进制的负数
- 验证每种进制的输入
- 同时显示所有转换结果
- 一键复制结果
- 编程和学习辅助:并排查看同一数值的四种进制表示,便于调试与学习
- 适用于颜色代码转换:输入 #FF5733 这类十六进制值,直接读出十进制 RGB 数值
- 支持大数字,最大到 JavaScript 安全整数(约 9 千万亿)
使用方法
- 1选择输入数字的进制(二进制、八进制、十进制或十六进制)。
- 2在输入框输入您的数字。
- 3所有转换结果即时显示。
- 4点击复制按钮复制任意结果。
- 5切换输入进制以从不同格式转换。
- 6将 IP 地址转换为其二进制和十六进制形式:输入十进制表示(如 192.168.1.1 转为 3232235777)查看所有进制等效值。
- 7使用十六进制输入模式将 CSS 颜色代码(#FF5733)转换为十进制 RGB 值(255, 87, 51)或二进制位模式。
- 8比较同一数字的二进制和八进制表示,理解不同进制如何表达相同的数量。
- 9在网络子网掩码的二进制形式(11111111111111111111111100000000)和点分十进制(255.255.255.0)之间转换。
- 10输入十进制数字即可并排查看其二进制、八进制和十六进制形式:非常适合学习进制转换。
常见问题
什么是进制?
进制(或基数)是表示数字所用不同符号的个数。二进制(基数 2)使用 0-1,八进制(基数 8)使用 0-7,十进制(基数 10)使用 0-9,十六进制(基数 16)使用 0-9 和 A-F。不同进制在不同场景下有用。
为什么程序员使用不同的进制?
二进制是计算机的原生语言。十六进制是表示二进制的紧凑方式(每个十六进制数字 = 4 个二进制数字)。八进制历史上用于某些系统。十进制对人类来说很自然。程序员经常需要在这些进制之间转换,用于调试、位操作和理解内存地址。
十六进制有什么用途?
十六进制广泛用于编程:颜色代码(例如 #FF0000 表示红色)、内存地址、二进制数据表示和机器码。每个十六进制数字表示 4 位,使其成为处理二进制数据的紧凑方式。例如,字节值(0-255)可以用两个十六进制数字(00-FF)表示。
可以转换负数吗?
可以,但仅在十进制输入模式。转换器将在其他进制中显示二进制补码表示。例如,十进制的 -1 在二进制中会变成一个很大的正数,因为 JavaScript 对负数使用二进制补码。
最大可以转换多大的数字?
转换器支持最大到 JavaScript 安全整数限制(2^53 - 1 = 9,007,199,254,740,991)的数字。这大约是 9 千万亿。更大的数字可能因 JavaScript 的数字表示而失去精度。
如何读取结果?
每个结果显示不同进制的数字。二进制显示为 0 和 1 的序列。八进制使用数字 0-7。十进制是熟悉的十进制数字。十六进制使用 0-9 和 A-F(大写)。所有结果表示相同的值,只是不同的表示形式。
如何手动将十进制转换为二进制?
反复将十进制数除以 2,记录每次的余数(0 或 1),从右到左排列。对于 13:13÷2=6 余 1,6÷2=3 余 0,3÷2=1 余 1,1÷2=0 余 1。从下往上读取余数:1101。本工具即时完成计算。
八进制数字系统用在什么地方?
八进制(基数 8)历史上用于早期计算系统如 PDP-8 和 UNIX 文件权限(chmod 755)。每个八进制数字代表 3 位。虽然现在不太常见,但在 POSIX 权限掩码和某些嵌入式系统中仍会用到。
可以转换带小数点的数字(浮点数)吗?
此转换器仅处理整数。浮点转换更复杂,因为它涉及符号位、指数和尾数(IEEE 754 标准)。例如,浮点数 3.14 的二进制表示与整数 3 完全不同。
十六进制在颜色代码中如何使用?
HTML/CSS 中的颜色是十六进制三元组:#RRGGBB。红色是 #FF0000(FF=255),绿色是 #00FF00,蓝色是 #0000FF。每对代表该颜色通道的强度(0-255)。在十六进制模式输入 FF 查看它等于十进制 255。
八进制数 0777 在文件权限中是什么意思?
在 Unix 中,chmod 0777 设置完全权限。每个八进制数字映射 3 位:读(4)、写(2)、执行(1)。7 = 4+2+1 = rwx。0777 表示所有者(rwx)、组(rwx)、其他人(rwx)。在八进制模式输入 777 查看其二进制表示(111111111)。
带小数的数字怎么进制转换?
手动转换时把整数部分和小数部分分开处理:整数部分用除基取余,小数部分用乘基取整,最后合并。比如十进制10.5转二进制是1010.1。注意:本进制转换只处理整数,输入小数点会被拒绝,小数部分需要自行按上述方法换算。
为什么进制转换的结果和别的计算器不一样?
不同工具对前导零、负数和小数输入的处理不同。本进制转换只显示最终结果,不提供分步计算过程。要核对结果,可以再转换回来:把输出值以其所在进制作为输入进制重新输入,应当还原出原始数字;想学手算步骤,按上面讲的除基取余方法操作。
误选了输入进制导致结果全错,怎么发现?
看前几位就能发现:'1010' 只有在选中二进制时才表示十;如果你在十进制模式下输入它,那是一千零一十。快速自检:十进制 10 = 二进制 1010 = 八进制 12 = 十六进制 A。结果比预期大 3-10 倍时,基本就是进制选错了。重新选择输入进制,四列结果立即重算。
负数转出来是一大串 1,是不是算错了?
没有。这是二进制补码,计算机存储负数的标准方式。32 位宽度下,-1 变成 32 个 1(11111111111111111111111111111111)。本转换器显示的是 JavaScript 数字(64 位)的原始补码,所以 -1 显示为 64 个 1。真实系统里宽度由数据类型决定(int8/int16/int32),粘贴使用时只保留目标宽度的位数即可。