0004、基础——进制
返回:网络安全知识库 · 上一节:机器语言、汇编语言与高级语言 · 下一节:数据:存储宽度
1、进制定义
| 进制 | 元素 | 规则 | 表示 |
|---|---|---|---|
| 二进制(BIN) | 01 | 逢2进1 | 0b + 二进制数 |
| 八进制(OCT) | 01234567 | 逢8进1 | 0 + 八进制数 |
| 十进制(DEC) | 0123456789 | 逢10进1 | 十进制数 |
| 十六进制(HEX) | 0123456789ABCDEF | 逢16进1 | 0x + 十六进制数 |
2、进制书写
| 进制 | 表示 |
|---|---|
| 二进制(BIN) | 0 1 10 11 100 101 110 111 |
| 八进制(OCT) | 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20 |
| 十进制(DEC) | 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
| 十六进制(HEX) | 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 |
3、进制映射
1 个十六进制数 = 4 个二进制位(4 Bit)
每 4 个二进制位都可以唯一对应 1 个十六进制数,因此十六进制常用于表示二进制数据。
| BIN | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| HEX | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| BIN | DEC | HEX | BIN | DEC | HEX |
|---|---|---|---|---|---|
| 0000 | 0 | 0 | 00010000 | 16 | 10 |
| 0001 | 1 | 1 | 00010001 | 17 | 11 |
| 0010 | 2 | 2 | 00010010 | 18 | 12 |
| 0011 | 3 | 3 | 00010011 | 19 | 13 |
| 0100 | 4 | 4 | 00010100 | 20 | 14 |
| 0101 | 5 | 5 | 00010101 | 21 | 15 |
| 0110 | 6 | 6 | 00010110 | 22 | 16 |
| 0111 | 7 | 7 | 00010111 | 23 | 17 |
| 1000 | 8 | 8 | 00011000 | 24 | 18 |
| 1001 | 9 | 9 | 00011001 | 25 | 19 |
| 1010 | 10 | A | 00011010 | 26 | 1A |
| 1011 | 11 | B | 00011011 | 27 | 1B |
| 1100 | 12 | C | 00011100 | 28 | 1C |
| 1101 | 13 | D | 00011101 | 29 | 1D |
| 1110 | 14 | E | 00011110 | 30 | 1E |
| 1111 | 15 | F | 00011111 | 31 | 1F |
4、进制转换
二/八/十六 → 十进制:加权位计数法
从最低位(右侧)开始编号,位序从 0 开始。
十进制值 = Σ(位值 × 基数^位序)
| 转换方向 | 方法 |
|---|---|
| 二/八/十六 → 十进制 | 加权位计数法 |
| 十进制 → 二进制 | 除2取余法 |
| 十进制 → 八进制 | 除8取余法 |
| 十进制 → 十六进制 | 除16取余法 |
二/八/十六 → 十进制
1 | BIN 11011011 |
十六进制 → 十进制
1 | HEX 0xDB |
十进制 → 二进制
除2取余法
不断除以 2,记录余数,最后逆序排列。
1 | DEC 219 |
十进制 → 十六进制
除16取余法
不断除以 16,记录余数,最后逆序排列。
1 | DEC 219 |
1 | DEC 999 |
二进制 ⇄ 十六进制:每 4 位二进制对应 1 位十六进制,可直接分组转换,无需计算。
1 | 11011011₂ |
5、进制拓展
计算机中的所有数据(程序、文件、图片、音频、视频等)最终都以 二进制(0/1) 的形式存储。
Bit(位):二进制的最小存储单位,一个 Bit 只能表示 0 或 1。
最高有效位(MSB,Most Significant Bit):二进制数中权值最高的一位,通常位于最左侧。
最低有效位(LSB,Least Significant Bit):二进制数中权值最低的一位,通常位于最右侧。
十六进制用于简化二进制表示,1 个十六进制数 = 4 个二进制位(4 Bit)。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Ruiqy~!










