一:采用二进制编码原因
计算机采用二进制是因为它在物理实现上最简单、最可靠,同时逻辑运算清晰、易于扩展,是最适合数字电子系统的表示方式。具体而言:
- 物理实现简单可靠:在电子电路中,电压的高低、电流的有无、开关的闭合与断开等都可以用来表示“0”和“1”
- 逻辑运算简单高效:计算机中的所有操作最终都可转化为逻辑运算(如与、或、非、异或等),这些逻辑运算在二进制下非常容易用门电路(AND、OR、NOT 等)来实现
- 存储和传输稳定:二进制数据在存储器(如内存、硬盘)或传输过程中更不容易出错。
- 制造成本低:使用二进制意味着硬件只需处理两种状态,元件设计更简单,成本更低
- 便于抽象和扩展:虽然底层使用的是二进制,但通过软件和硬件的配合,可以轻松地将二进制抽象成字符、图像、音频等各种形式
二:进位计数制
进位计数法是一种常用的计数方法,其核心在于每一位上的数字根据固定的基数进行累积,当达到该基数时就向高位进位。常见的进位制包括十进制、二进制、八进制和十六进制等。在进位计数法中,每个数位上可以使用的不同数码的数量称为该进位制的“基数”。例如,十进制的基数为10,使用0到9这十个数码表示数值,每当某一位上的数值达到10时,就会向前一位进位。类似地,二进制的基数为2,仅使用0和1两个数码,“逢二进一”;八进制的基数为8,使用0到7共八个数码,“逢八进一”;十六进制的基数为16,使用0到9以及A到F(分别代表10到15)共十六个符号,“逢十六进一”。
每一个数码所表示的实际数值不仅取决于其本身的大小,还与它所在的数位有关。这个与位置相关的系数称为“权”或“位权”。一个数的总体值等于各个数位上的数码乘以其对应位权后的总和。对于任意一个 r r r进制数( K n K n − 1 . . . K n K − 1 . . . K − m K_{n}K_{n-1}...K_{n}K_{-1}...K_{-m} KnKn−1...KnK−1...K−m)的数值可以表示为
K n r n + K n − 1 r n − 1 + . . . K 0 r 0 + K − 1 r − 1 + . . . + K − m r − m = ∑ i = n − m K i r i K_{n}r^{n}+K_{n-1}r^{n-1}+...K_{0}r^{0}+K_{-1}r^{-1}+...+K_{-m}r^{-m}=\sum_{i=n}^{-m}K_{i}r^{i} Knrn+Kn−1rn−1+...K0r0+K−1r−1+...+K−mr−m=i=n∑−mKiri
具体而言
- 十进制:例如975,
975.36
=
9
×
100
+
7
×
10
+
5
×
1
+
3
×
0.1
+
6
×
0.01
975.36=9×100+7×10+5×1+3×0.1+6×0.01
975.36=9×100+7×10+5×1+3×0.1+6×0.01
,也即 975 = 9 × 1 0 2 + 7 × 1 0 1 + 5 × 1 0 0 + 3 × 1 0 − 1 + 6 × 1 0 − 2 975=9×10^{2}+7×10^{1}+5×10^{0}+3×10^{-1}+6×10^{-2} 975=9×102+7×101+5×100+3×10−1+6×1