什么是进制数咱们平时记数字,习性用 0、1、2 一直到 9,逢十进一,这就是十进制。但如果你跟程序员聊过天,或者玩过编程游戏,可能会听到“二进制”、“十六进制”这些词。别被这些名词吓到,其实核心逻辑都一样,只是“满几许进一”的制度变了。
说白了,进制就是一种记账的规矩。想象你只有两只手(代表两种情形),那你怎么数数?只能靠两只手的不同姿势来表示 0 和 1,数到最大位就得往高位进一位。计算机也是这个理,它内部电路只有通电(1)和断电(0)两种情形,因此它最顺手的工具就是二进制。而人类之因此用十进制,多半是由于我们有十个指头,计数方便而已。
除了这两种,生活中偶尔还能碰到八进制(比如老式的 Linux 文件权限)或十六进制(现在颜色代码、IP 地址常用)。领会了这个概念,你就不会再对着那些看起来像乱码的数字发懵了。为了方便对照,我把常见的几种进制整理了下表,你可以直接参考:
| 进制名称 | 基数值 | 常用符号 | 典型应用场景 | 简单规律 |
| : | : | : | : | : |
| 二进制 | 2 | 0、1 | 计算机底层存储、逻辑运算 | 逢二进一,如 1+1=10 |
| 八进制 | 8 | 0-7 | 早期计算体系、部分文件权限 | 逢八进一,每 3 位对应 1 个字节 |
| 十进制 | 10 | 0-9 | 日常生活中的数学计算 | 逢十进一,最符合人类直觉 |
| 十六进制 | 16 | 0-9, A-F | 网页配色、内存地址、MAC 地址 | 逢十六进一,A 代表 10,F 代表 15 |
其实不管哪种进制,本质都是“位置权重”的概念。比如十进制的 100,那个中间的 0 和最终的 0 代表的意义完全不同,由于它们占据的位置不同。掌握了这个权重的逻辑,不管是算钱的还是编代码,都能把底层的门道看清楚。记住,技术是为了让人类更好地使用工具,而不是增加负担,看懂了进制背后的“进位”本质,剩下的无非是熟练度的难题。
