阅读:0       作者:严长生

什么是二进制、八进制、十六进制和十进制:数字系统和进制

通俗地理解,数字系统(Number System)就是一种计数方式,它规定了如何用特定的符号来表示一个具体的数值。我们已经习惯了使用十进制数字系统,它有 0~9 共十个符号,每个数值都由这些特定的符号组成,例如 89001、16、223.79 等。这种可以用来组成数值的特定符号称为数码,很明显,十进制数字系统有十个数码。

在十进制数字系统中,一旦低位的数值超过十就没有对应的数码了,就无法表示了,此时必须向高位“进位”,以让低位的数值始终保持在 0~9 的范围,也就是“逢十进一”。这就是数字系统的“进位制”,简称“进制”。

一个X进制的数字系统有X个数码,表示数值时“逢X进一”;X称为该数字系统的基数(Radix)。对于同一个数值,不同进制的数字系统表示方式不一样。

最常用的数字系统有十进制(Decimal)、二进制(Binary)、八进制(Octal)和十六进制(Hexadecimal)。在数字电路的底层硬件中,为了简化设计并保持稳定,一律使用二进制;在表示一个具体的数值时,还经常会使用八进制和十六进制,它们比十进制更容易转换成二进制。

本节我们将讨论这些常用的数字系统,并教给大家如何用不同的数字系统来表示一个具体的数值。

十进制数字系统

十进制数字系统的基数是 10,使用从 0 到 9 的十个阿拉伯数字作为数码。小数点左侧的数字是整数部分,小数点右侧的数字是小数部分。

在十进制数字系统中,小数点左侧每一位数码的权重(Weight)依次是 100、101、102、103......小数点右侧每一位数码的权重依次是 10-1、10-2、10-3、10-4......这意味着,每一位数码的权重都是 10 的次方。

例子

对于十进制数字 1358.246,整数部分是 1358,小数部分是 0.246。数码 8、5、3、1 的权重分别是 100、101、102、103,类似地,数码 2、4、6 的权重分别是10-1、10-2、10-3
 
从数学上讲,可以把 1358.246 写成下面的形式:
1358.246 = (1 × 103) + (3 × 102) + (5 × 101) + (8 × 100) + (2 × 10-1) + (4 × 10-2) + (6 × 10-3)
将等号右侧的多项式简化后,就得到了等号左侧的十进制数字。

二进制数字系统

所有的数字电路都使用二进制数字系统。二进制数字系统的基数是 2,使用阿拉伯数字 0 和 1 作为数码。小数点左侧的数字是整数部分,小数点右侧的数字是小数部分。
 
在二进制数字系统中,小数点左侧每一位数码的权重依次是 20、21、22、23...…小数点右侧每一位数码的权重依次是 2-1、2-2、2-3、2-4...…每一位数码的权重都是 2 的次方。

例子

对于二进制数字 1101.011,整数部分是 1101,小数部分是 0.011。数码 1、0、1、1 的权重分别是 20、21、22、23,类似地,数码 0、1、1 的权重分别是 2-1、2-2、2-3
 
从数学上讲,可以把 1101.011 写成下面的形式:
1101.011 = (1 × 23) + (1 × 22) + (0 × 21) + (1 × 20) + (0 × 2-1) +(1 × 2-2) + (1 × 2-3)
将等号右侧的多项式简化后,就得到了等号左侧的二进制数字。

八进制数字系统

八进制数字系统的基数是 8,使用从 0 到 7 的八个阿拉伯数字作为数码。小数点左侧的数字是整数部分,小数点右侧的数字是小数部分。
 
在八进制数字系统中,小数点左侧每一位数码的权重依次是 80、81、82、83...…小数点右侧每一位数码的权重依次是 8-1、8-2、8-3、8-4...…每一位数码的权重都是 8 的次方。

例子

对于八进制数字 1457.236,整数部分是 1457,小数部分是 0.236。数码 7、5、4、1 的权重分别是 80、81、82、83,类似地,数码 2、3、6 的权重分别是8-1、8-2、8-3
 
从数学上讲,可以把1457.236写成下面的形式:
1457.236 = (1 × 83) + (4 × 82) + (5 × 81) + (7 × 80) + (2 × 8-1) +(3 × 8-2) + (6 × 8-3)
将等号右侧的多项式简化后,就得到了等号左侧的八进制数字。

十六进制数字系统

十六进制数字系统的基数是 16,使用 0 到 9 的十个阿拉伯数字以及 A 到 F(不区分大小写)的六个英文字母作为数码,其中 A~F 分别表示 10~15。小数点左侧的数字是整数部分,小数点右侧的数字是小数部分。
 
在十六进制数字系统中,小数点左侧每一位数码的权重依次是 160、161、162、163...…小数点右侧每一位数码的权重依次是 16-1、16-2、16-3、16-4...…每一位数码的权重都是 16 的次方。

例子

对于十六进制数字 1A05.2C4,整数部分是 1A05,小数部分是 0.2C4。数码 5、0、A、1 的权重分别是 160、161、162、163,类似地,数码 2、C、4 的权重分别是 16-1、16-2、16-3
 
从数学上讲,可以把 1A05.2C4 写成下面的形式:
1A05.2C4 = (1 × 163) + (10 × 162) + (0 × 161) + (5 × 160) + (2 × 16-1) + (12 × 16-2) + (4 × 16-3)
将等号右侧的多项式简化后,就得到了等号左侧的十六进制数字。