通过MCP连接 →

输入计算

数学公式

广告

结果

十进制(基数 10)
255
对应的十进制数值
二进制(基数 2) 11111111
八进制(基数 8) 377
十六进制(基数 16) FF

这个转换器能做什么

本工具可在计算机领域最常用的四种数制之间转换整数:二进制(基数 2)、八进制(基数 8)、十进制(基数 10)和十六进制(基数 16)。只需输入一个数值,告诉计算器它采用的是哪种进制,工具就会同时给出在这四种数制下的对应写法。

使用方法

在数值框中输入数字,从下拉菜单中选择它所属的进制,然后查看结果即可。对于十六进制,你可以使用数字 0-9 和字母 A-F(不区分大小写),开头可选的 0x0b 前缀会被自动去除。如果某个数字对所选进制无效,结果会回退为零。

计算原理

要把一个数转换成十进制,需将每一位数字乘以基数的对应次幂(从右往左、从 0 开始计位),再把这些乘积相加:

$$\text{数值} = \sum_{i=0}^{k-1} d_i \cdot \text{基数}^{\,i}$$

反向转换时,则用十进制数值不断除以目标进制;每次的余数就是一位数字,把这些余数从最后一次到第一次倒着读出,即可得到转换后的数。

展示 b 进制中各数字位权的示意图,指数从右到左递增
每个数字乘以基数的位置次幂,再求和。

实例演示

以二进制 1111 为例。换算成十进制为 $$1\times2^3 + 1\times2^2 + 1\times2^1 + 1\times2^0 = 8 + 4 + 2 + 1 = 15$$ 再把 15 转换成十六进制:\(15 \div 16 = 0\) 余 \(15\),而 15 对应数字 F。换成八进制时,\(15 \div 8 = 1\) 余 \(7\),因此结果是 17

同一数字以二进制、八进制、十进制和十六进制表示的四条彩色条
同一个值在四种数制中并排显示。

常见数制等价物

计算中使用的四种位置计数制具有相同的值——只是基数(进制)不同。十进制(十进制)是日常计数系统;二进制(二进制)是数据物理存储的方式;八进制(八进制)和十六进制(十六进制)是分组比特的简洁缩写。下表列出了所有四种系统中最常见的值。

十进制(十进制) 二进制(二进制) 八进制(八进制) 十六进制(十六进制)
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10
32 100000 40 20
64 1000000 100 40
128 10000000 200 80
255 11111111 377 FF
256 100000000 400 100
1024 10000000000 2000 400

注意255(8位字节能容纳的最大值)在二进制中是8个1,在十六进制中是FF,而256需要第9位。这些边界值在颜色、内存大小和网络掩码中不断出现。

关键术语解释

基数 / 进制
计数制使用的不同数字符号的数量,以及当向左移动时每个位置相乘的值。十进制的基数为10(数字0–9),二进制的基数为2(0–1),八进制的基数为8(0–7),十六进制的基数为16(0–9然后A–F)。位置\(i\)上的数字\(d_i\)对总数的贡献是\(d_i \cdot \text{基数}^{\,i}\)。
比特
一个二进制数字——最小的数据单位,保存单个0或1。\(n\)个比特可以表示\(2^n\)个不同的值。
半字节
4个比特的组合。一个半字节可以容纳\(2^4 = 16\)个值,恰好是一个十六进制数字(0–F)。这就是为什么十六进制与二进制完全对应——每个十六进制数字是一个半字节。
字节
8个比特(两个半字节)的组合,表示\(2^8 = 256\)个值,从0到255。一个字节写成两个十六进制数字,例如FF = 255。
最高有效位(MSD)
最左边的数字,具有最大的位置权重(基数的最高次幂)。在二进制中,它是最高有效位(MSB)。
最低有效位(LSD)
最右边的数字,具有最小的权重(\(\text{基数}^0 = 1\))。在二进制中,它是最低有效位(LSB),决定一个值是奇数还是偶数。
0b前缀
一种约定(在C、Python等中使用),标记一个字面量为二进制,例如0b1010表示十进制10。0b只是记号,不是值的一部分。
0x前缀
十六进制字面量的标准标记,例如0xFF表示十进制255。八进制通常用前导00o前缀表示。
十六进制数字A–F
由于十六进制需要16个符号,但只有0–9作为普通数字存在,字母A–F代表值10–15:A=10、B=11、C=12、D=13、E=14、F=15。它们可以用大写或小写字母表示。

常见问题

支持十六进制的字母吗? 支持——十六进制下可使用 A–F(大写或小写均可)。

能转换负数或小数吗? 不能,本转换器仅适用于非负整数。

为什么我的十进制结果带有千位分隔符? 这是为了便于阅读而添加的;二进制、八进制和十六进制属于按位编码,因此输出时不带分隔符。

最后更新: