欢迎来到数系(Number Bases)的世界!
你好!你有没有想过,电脑本质上只是一堆细小的开关,到底是怎样处理复杂的游戏、视频或社交媒体的呢?这一切都源于我们如何表示数值。在本章中,我们将探讨不同的数系(Number Bases)。学完之后,你就能够掌握“电脑语言”,了解二进制(Binary)和十六进制(Hexadecimal),并明白为何这些系统对于机器来说,比我们日常使用的数字系统更有效率。
不用担心数学不是你的强项!我们会透过简单的规律和技巧,一步步为你拆解这些概念。
1. 理解“进制”(Base)
在研究电脑之前,先看看人类是如何数数的。我们使用十进制(Decimal/Denary,或称为 Base 10)。这是因为我们有十根手指!
在十进制中,我们有十个符号:0, 1, 2, 3, 4, 5, 6, 7, 8, 9。当我们数到 9 时,符号就用完了,必须“进位”到下一栏(即“十位”)。
等等,什么是其他进制?
“进制”简单来说就是该系统中可用的数字有多少个。电脑并没有十根手指;它只有开启(ON)或关闭(OFF)两种状态的开关。这就是为什么电脑使用二进制(Base 2)的原因。
快速回顾:你需要知道的三种进制
- 十进制(Base 10): 使用 0-9 的数字。(例如:\( 67_{10} \))
- 二进制(Base 2): 只使用 0 和 1。(例如:\( 10011011_2 \))
- 十六进制(Base 16): 使用 0-9 的数字和 A-F 的字母。(例如:\( AE_{16} \))
你知道吗?写在数字右下角的小数字(如 \( 67_{10} \) 中的 \( _{10} \))称为下标(Subscript)。它告诉我们正在使用哪种进制,以免混淆!
重点总结:“进制”定义了可用的数字数量。人类喜欢十进制,但电脑喜欢二进制。
2. 二进制:电脑的语言
在二进制中,每一栏的价值都是其右侧一栏的两倍。我们不再使用百位、十位和个位,而是使用 128、64、32、16、8、4、2 和 1。
如何将二进制转换为十进制
要把二进制转换成你熟悉的数字,只需画一个表格,并把“ON”(即 1)对应的值加起来即可。
例子:将 \( 10101000_2 \) 转换为十进制
1. 写下位值标题:
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1
2. 在下方填入你的二进制数字:
1 | 0 | 1 | 0 | 1 | 0 | 0 | 0
3. 只将下方对应 1 的数字加起来:
\( 128 + 32 + 8 = 168 \)
所以,\( 10101000_2 = 168_{10} \)。
如何将十进制转换为二进制
这就像往桶子里装东西。从最大的“重量”(128)开始,看看它是否能放入你的数字中。
例子:将 \( 45_{10} \) 转换为二进制
1. 128 能放入 45 吗?不能 (0)
2. 64 能放入 45 吗?不能 (0)
3. 32 能放入 45 吗?能!填入 1。(剩余:\( 45 - 32 = 13 \))
4. 16 能放入 13 吗?不能 (0)
5. 8 能放入 13 吗?能!填入 1。(剩余:\( 13 - 8 = 5 \))
6. 4 能放入 5 吗?能!填入 1。(剩余:\( 5 - 4 = 1 \))
7. 2 能放入 1 吗?不能 (0)
8. 1 能放入 1 吗?能!填入 1。
结果:\( 00101101_2 \)
常见错误:忘记检查最后的“1”栏位。请务必确保你已经算到最右边!
重点总结:使用 2 的幂次方表(1、2、4、8、16、32、64、128)来进行互换。
3. 十六进制:人类的“速记法”
二进制对电脑来说很棒,但对人类来说却是噩梦。试着想象要在满满的一页 1011010111000101... 中找出错误!
这就是我们使用十六进制(Base 16)的原因。它就像是二进制的“昵称”。
十六进制的“字母表”
因为我们需要 16 个不同的符号,但只有 10 个数字(0-9),所以我们用字母来代表其余部分:
A = 10, B = 11, C = 12, D = 13, E = 14, F = 15。
记忆小撇步:只要记住 A 是 10。知道了这点,你就可以用手指数出来(B=11, C=12,依此类推)。
为什么十六进制被用作速记?
一个十六进制数字正好代表四个比特(bits)。这使得两者之间的转换非常容易。
- 它更简短且更容易记忆。
- 人类在输入时比较不容易出错。
- 程序设计师很容易在脑中将其转换为二进制。
重点总结:十六进制并非由电脑硬件直接“使用”;它是给人使用的,目的是让处理二进制变得更轻松。
4. 十六进制与二进制之间的转换
这是所有转换中最简单的,因为我们使用“四位一组”法则。
二进制转十六进制(步骤)
例子:将 \( 11101011_2 \) 转换为十六进制
1. 将二进制数字从右边开始,每四个分成一组:
1110 | 1011
2. 使用 8, 4, 2, 1 计算每一组的值:
左边:\( 8 + 4 + 2 = 14 \)。在十六进制中,14 是 E。
右边:\( 8 + 2 + 1 = 11 \)。在十六进制中,11 是 B。
3. 合并起来:EB。
十六进制转二进制(步骤)
例子:将 \( 2F_{16} \) 转换为二进制
1. 将每个数字分开处理:2 和 F。
2. 将每个数字转换为 4 比特的二进制数:
2 是 \( 0010 \)
F(即 15)是 \( 1111 \)
3. 合并起来:\( 00101111_2 \)。
快速回顾框:
4 个比特 = 1 个十六进制位
在十六进制和二进制之间进行任何转换时,请使用 8, 4, 2, 1 的数值。
重点总结:要进行十六进制转换,请务必先经过二进制。这是最安全的“桥梁”!
总结检查清单
你能做到以下几点吗?如果可以,你已经准备好考试了!
- 解释什么是 Base 2、10 和 16。
- 使用位值表将二进制数字转换为十进制。
- 透过“减法”将十进制数字转换为二进制。
- 解释为什么使用十六进制,因为它对人类而言更易于阅读和书写。
- 透过四位一组的方式在二进制和十六进制之间进行转换。
做得好!数据表示法可能听起来像是在学习秘密代码,但一旦你掌握了规律,它就会变成你的第二天性。继续练习那些 8, 4, 2, 1 表格吧!