数字进制转换器:二进制、八进制、十进制、十六进制与 ASCII 互转指南

更新 2026-08-09 约 15 分钟 开发工具 How-to

数字进制转换器是 WebUtils 系列工具中的核心组件,用于处理二进制、八进制、十进制、十六进制和 ASCII 之间的转换,以及位移操作。本指南提供了完整的使用教程、概念解释、步骤指导、错误对照表、真实开发场景和详细 FAQ,帮助用户熟练掌握这一工具。无论是在网页开发、编程调试还是系统运维中,理解进制转换都是必不可少的技能。通过本指南,你可以避免常见错误,并高效完成各种进制互转任务。

立即使用相关工具 立即打开 WebUtils 数字进制转换器
打开工具 →

进制概念详解

进制是表示数值的基本系统,每个系统有自己的基数和表示符号。掌握这些概念对于正确进行转换和理解底层数据至关重要。

二进制系统

二进制是基数为2的系统,仅使用0和1。计算机内存和处理器内部都以二进制形式存储和处理数据。每个二进制位代表2的幂次方。

示例转换:

十进制到二进制:

  • 0 = 0
  • 1 = 1
  • 2 = 10
  • 3 = 11
  • 4 = 100
  • 5 = 101
  • 6 = 110
  • 7 = 111
  • 8 = 1000
  • 9 = 1001
  • 10 = 1010
  • 11 = 1011
  • 12 = 1100
  • 13 = 1101
  • 14 = 1110
  • 15 = 1111
  • 16 = 10000
  • 17 = 10001
  • 18 = 10010
  • 19 = 10011
  • 20 = 10100
  • 21 = 10101
  • 22 = 10110
  • 23 = 10111
  • 24 = 11000
  • 25 = 11001
  • 26 = 11010
  • 27 = 11011
  • 28 = 11100
  • 29 = 11101
  • 30 = 11110
  • 31 = 11111
  • 32 = 100000

八进制系统

八进制是基数为8的系统,使用0到7。常用于 Unix 权限表示和某些嵌入式系统。

十进制到八进制示例:

  • 0 = 0
  • 1 = 1
  • 2 = 2
  • 3 = 3
  • 4 = 4
  • 5 = 5
  • 6 = 6
  • 7 = 7
  • 8 = 10
  • 9 = 11
  • 10 = 12
  • 11 = 13
  • 12 = 14
  • 13 = 15
  • 14 = 16
  • 15 = 17
  • 16 = 20
  • 17 = 21
  • 18 = 22
  • 19 = 23
  • 20 = 24
  • 21 = 25
  • 22 = 26
  • 23 = 27
  • 24 = 30
  • 25 = 31
  • 26 = 32
  • 27 = 33
  • 28 = 34
  • 29 = 35
  • 30 = 36
  • 31 = 37
  • 32 = 40
  • 33 = 41
  • 34 = 42
  • 35 = 43
  • 36 = 44
  • 37 = 45
  • 38 = 46
  • 39 = 47
  • 40 = 50
  • 41 = 51
  • 42 = 52
  • 43 = 53
  • 44 = 54
  • 45 = 55
  • 46 = 56
  • 47 = 57
  • 48 = 60
  • 49 = 61
  • 50 = 62
  • 51 = 63
  • 52 = 64
  • 53 = 65
  • 54 = 66
  • 55 = 67
  • 56 = 70
  • 57 = 71
  • 58 = 72
  • 59 = 73
  • 60 = 74
  • 61 = 75
  • 62 = 76
  • 63 = 77
  • 64 = 80
  • 65 = 81
  • 66 = 82
  • 67 = 83
  • 68 = 84
  • 69 = 85
  • 70 = 86
  • 71 = 87
  • 72 = 90
  • 73 = 91
  • 74 = 92
  • 75 = 93
  • 76 = 94
  • 77 = 95
  • 78 = 96
  • 79 = 97
  • 80 = 100
  • 81 = 101
  • 82 = 102
  • 83 = 103
  • 84 = 104
  • 85 = 105
  • 86 = 106
  • 87 = 107
  • 88 = 110
  • 89 = 111
  • 90 = 112
  • 91 = 113
  • 92 = 114
  • 93 = 115
  • 94 = 116
  • 95 = 117
  • 96 = 120
  • 97 = 121
  • 98 = 122
  • 99 = 123
  • 100 = 144

十进制系统

基数 10,符号 0-9,是人类日常使用的计数系统。

十六进制系统

十六进制基数 16,使用 0-9 和 A-F。每个十六进制数字代表 4 个二进制位。广泛用于内存地址、颜色代码和调试。

十进制到十六进制示例:

  • 0 = 0
  • 1 = 1
  • 2 = 2
  • 3 = 3
  • 4 = 4
  • 5 = 5
  • 6 = 6
  • 7 = 7
  • 8 = 8
  • 9 = 9
  • 10 = A
  • 11 = B
  • 12 = C
  • 13 = D
  • 14 = E
  • 15 = F
  • 16 = 10
  • 17 = 11
  • 18 = 12
  • 19 = 13
  • 20 = 14
  • 21 = 15
  • 22 = 16
  • 23 = 17
  • 24 = 18
  • 25 = 19
  • 26 = 1A
  • 27 = 1B
  • 28 = 1C
  • 29 = 1D
  • 30 = 1E
  • 31 = 1F
  • 32 = 20
  • 33 = 21
  • 34 = 22
  • 35 = 23
  • 36 = 24
  • 37 = 25
  • 38 = 26
  • 39 = 27
  • 40 = 28
  • 41 = 29
  • 42 = 2A
  • 43 = 2B
  • 44 = 2C
  • 45 = 2D
  • 46 = 2E
  • 47 = 2F
  • 48 = 30
  • 49 = 31
  • 50 = 32
  • 51 = 33
  • 52 = 34
  • 53 = 35
  • 54 = 36
  • 55 = 37
  • 56 = 38
  • 57 = 39
  • 58 = 3A
  • 59 = 3B
  • 60 = 3C
  • 61 = 3D
  • 62 = 3E
  • 63 = 3F
  • 64 = 40
  • 65 = 41
  • 66 = 42
  • 67 = 43
  • 68 = 44
  • 69 = 45
  • 70 = 46
  • 71 = 47
  • 72 = 48
  • 73 = 49
  • 74 = 4A
  • 75 = 4B
  • 76 = 4C
  • 77 = 4D
  • 78 = 4E
  • 79 = 4F
  • 80 = 50
  • 81 = 51
  • 82 = 52
  • 83 = 53
  • 84 = 54
  • 85 = 55
  • 86 = 56
  • 87 = 57
  • 88 = 58
  • 89 = 59
  • 90 = 5A
  • 91 = 5B
  • 92 = 5C
  • 93 = 5D
  • 94 = 5E
  • 95 = 5F
  • 96 = 60
  • 97 = 61
  • 98 = 62
  • 99 = 63
  • 100 = 64
  • 101 = 65
  • 102 = 66
  • 103 = 67
  • 104 = 68
  • 105 = 69
  • 106 = 6A
  • 107 = 6B
  • 108 = 6C
  • 109 = 6D
  • 110 = 6E
  • 111 = 6F
  • 112 = 70
  • 113 = 71
  • 114 = 72
  • 115 = 73
  • 116 = 74
  • 117 = 75
  • 118 = 76
  • 119 = 77
  • 120 = 78
  • 121 = 79
  • 122 = 7A
  • 123 = 7B
  • 124 = 7C
  • 125 = 7D
  • 126 = 7E
  • 127 = 7F
  • 128 = 80
  • 129 = 81
  • 130 = 82
  • 131 = 83
  • 132 = 84
  • 133 = 85
  • 134 = 86
  • 135 = 87
  • 136 = 88
  • 137 = 89
  • 138 = 8A
  • 139 = 8B
  • 140 = 8C
  • 141 = 8D
  • 142 = 8E
  • 143 = 8F
  • 144 = 90
  • 145 = 91
  • 146 = 92
  • 147 = 93
  • 148 = 94
  • 149 = 95
  • 150 = 96
  • 151 = 97
  • 152 = 98
  • 153 = 99
  • 154 = 9A
  • 155 = 9B
  • 156 = 9C
  • 157 = 9D
  • 158 = 9E
  • 159 = 9F
  • 160 = A0
  • 161 = A1
  • 162 = A2
  • 163 = A3
  • 164 = A4
  • 165 = A5
  • 166 = A6
  • 167 = A7
  • 168 = A8
  • 169 = A9
  • 170 = AA
  • 171 = AB
  • 172 = AC
  • 173 = AD
  • 174 = AE
  • 175 = AF
  • 176 = B0
  • 177 = B1
  • 178 = B2
  • 179 = B3
  • 180 = B4
  • 181 = B5
  • 182 = B6
  • 183 = B7
  • 184 = B8
  • 185 = B9
  • 186 = BA
  • 187 = BB
  • 188 = BC
  • 189 = BD
  • 190 = BE
  • 191 = BF
  • 192 = C0
  • 193 = C1
  • 194 = C2
  • 195 = C3
  • 196 = C4
  • 197 = C5
  • 198 = C6
  • 199 = C7
  • 200 = C8
  • 201 = C9
  • 202 = CA
  • 203 = CB
  • 204 = CC
  • 205 = CD
  • 206 = CE
  • 207 = CF
  • 208 = D0
  • 209 = D1
  • 210 = D2
  • 211 = D3
  • 212 = D4
  • 213 = D5
  • 214 = D6
  • 215 = D7
  • 216 = D8
  • 217 = D9
  • 218 = DA
  • 219 = DB
  • 220 = DC
  • 221 = DD
  • 222 = DE
  • 223 = DF
  • 224 = E0
  • 225 = E1
  • 226 = E2
  • 227 = E3
  • 228 = E4
  • 229 = E5
  • 230 = E6
  • 231 = E7
  • 232 = E8
  • 233 = E9
  • 234 = EA
  • 235 = EB
  • 236 = EC
  • 237 = ED
  • 238 = EE
  • 239 = EF
  • 240 = F0
  • 241 = F1
  • 242 = F2
  • 243 = F3
  • 244 = F4
  • 245 = F5
  • 246 = F6
  • 247 = F7
  • 248 = F8
  • 249 = F9
  • 250 = FA
  • 251 = FB
  • 252 = FC
  • 253 = FD
  • 254 = FE
  • 255 = FF

ASCII 字符集

ASCII 码表将字符映射到十进制值,范围 0-127。用于文本编码。

示例字符转换:

'A' = 65

'B' = 66

'C' = 67

'D' = 68

'E' = 69

'F' = 70

'G' = 71

'H' = 72

'I' = 73

'J' = 74

'K' = 75

'L' = 76

'M' = 77

'N' = 78

'O' = 79

'P' = 80

'Q' = 81

'R' = 82

'S' = 83

'T' = 84

'U' = 85

'V' = 86

'W' = 87

'X' = 88

'Y' = 89

'Z' = 90

'a' = 97

'b' = 98

'c' = 99

'd' = 100

'e' = 101

'f' = 102

'g' = 103

'h' = 104

'i' = 105

'j' = 106

'k' = 107

'l' = 108

'm' = 109

'n' = 110

'o' = 111

'p' = 112

'q' = 113

'r' = 114

's' = 115

't' = 116

'u' = 117

'v' = 118

'w' = 119

'x' = 120

'y' = 121

'z' = 122

'0' = 48

'1' = 49

'2' = 50

'3' = 51

'4' = 52

'5' = 53

'6' = 54

'7' = 55

'8' = 56

'9' = 57

空格 = 32

换行 = 10

回车 = 13

位移操作详解

位移是二进制位运算的核心操作,用于高效的位处理。

左移 (<<) :将位向左移动,新增低位为 0。

右移 (>>) :将位向右移动,新增高位为 0(无符号)或符号位(有符号)。

示例:

输入 13 (二进制 1101),左移 1 位:11010 = 26

左移 2 位:110100 = 52

右移 1 位:110 = 6

右移 2 位:11 = 3

在 WebUtils 转换器中,可以选择基数为二进制,并输入移位值进行可视化转换。

WebUtils 数字进制转换器使用指南

  1. 进入 WebUtils 工具页面,使用提供的工具路径 tools/converter/number-base-converter.html
  1. 在输入区域输入你的数字或字符。
  1. 从下拉菜单选择输入进制类型。
  1. 选择输出进制类型。
  1. 点击转换按钮,查看结果。
  1. 对于位移功能,启用移位选项,输入移位数量。
  1. 结果将自动更新,显示不同进制下的数值和二进制表示。
  1. 可复制结果并用于你的项目。
  1. 建议使用 Firefox 或 Chrome 浏览器获取最佳体验。
  1. 测试转换后,验证结果与预期一致。

常见错误与解决方法

| 错误类型 | 描述 | 解决方法 |

| 进制选择错误 | 选择错误的基数导致转换失败 | 仔细检查输入和输出基数选择 |

| 位移位数过多 | 移位次数超出数据宽度 | 限制在 0 到 31 或 63 范围内 |

| ASCII 输入问题 | 输入非 ASCII 字符 | 确保字符在 0-127 范围内 |

| 十六进制大小写不一致 | 输入小写但期望大写 | 转换器通常自动处理大小写 |

| 负数符号丢失 | 负数在某些进制显示异常 | 使用补码表示或指定基数为二进制 |

| 转换结果不匹配 | 不同工具结果不同 | 使用同一工具进行所有转换 |

| 视觉化缺失 | 转换器不显示位表示 | 启用所有选项查看详细视图 |

真实开发与使用场景

场景1: 软件开发中的端口号转换

在开发 Web 应用时,端口号 80 是标准 HTTP,8080 是常用非标准端口。使用十六进制表示 0x1F90。转换后可用于配置或文档。

场景2: 网络抓包分析

在 Wireshark 或其他工具中,十六进制常用于显示原始数据包。使用转换器将十进制端口转换为十六进制以匹配日志。

场景3: 嵌入式编程位操作

在单片机开发中,控制 GPIO 引脚时,常使用位移和掩码。0x01 << 4 = 0x10 表示特定引脚高电平。

场景4: 文件格式解析

在解析二进制文件时,字节序和位移操作至关重要。转换器可帮助理解文件结构。

场景5: 安全与加密相关

在密钥生成或掩码中,位移用于设置权限位。小心加密与进制转换的混淆。

场景6: 教育与学习

学生学习计算机基础时,通过转换练习二进制逻辑。

场景7: 移动应用开发

在跨平台 app 中,确保数字在不同进制间正确转换以匹配后端。

场景8: 调试日志分析

在日志中看到十六进制转储时,使用转换器还原原始值。

场景9: 性能优化

理解位移可优化代码性能,如快速乘以2的幂。

场景10: 跨平台兼容

在不同操作系统或语言中,确保进制表示一致。

常见问题解答

1. 如何在 WebUtils 数字进制转换器中进行二进制到十进制的转换?

打开工具,输入二进制数字,选择输出为十进制,点击转换即可得到结果。

2. 八进制在实际项目中如何应用?

八进制常用于 Unix 目录权限,如 755 表示读写执行。转换器可帮助你将权限转换为其他进制。

3. ASCII 编码如何与十六进制互转?

在转换器中选择 ASCII 输入,输出十六进制,或反之。字符 'A' 转换为 65 十进制或 A 十六进制。

4. 位移操作在什么场景下使用?

位移用于高效的位操作,如设置标志位或计算偏移量。在 WebUtils 中可以直接输入和查看效果。

5. 转换器是否支持多进制同时转换?

支持多种基数输入和输出,方便用户比较不同表示形式。

6. 如何处理大数或负数?

转换器支持合理范围内的数,负数使用补码表示。二进制位移对负数有特殊规则。

7. 为什么需要学习这些概念?

这些基础知识是调试代码、理解底层系统和编写高效程序的关键。

8. 转换器在离线使用吗?

它是网页工具,主要在浏览器中运行,但结果可复制到离线文档。

9. 如何导出转换结果?

转换器通常提供复制按钮,或截图保存结果。

10. 转换器是否包含历史记录?

有输入历史可重复使用上次的转换。

11. 转换器支持自定义基数吗?

不直接支持,但通过输入字符串或使用位移功能模拟。

12. 转换结果如何在代码中使用?

复制结果后,在代码中添加前缀如 0x 对于十六进制,或使用 parseInt() 函数。