Blog
二进制数系统
二进制数字系统是一种以 2 为基数的位置编号系统,由戈特弗里德·威廉·莱布尼茨 (Gottfried Wilhelm Leibniz) 在 17 世纪发明。在以 2 为基数的数字系统中,基数为 2,因为仅使用 0 和 1 这两个数字来表示所有可能的数字。
0 和 1 这两个数字通常称为“位”,是“二进制数字”一词的缩写。
例如,110012 是一个二进制数。
- 从 11001 开始,位数为 52 有 5 位数字。
- 因此,二进制数中的每个数字都是一个位。例如,左边的1是数字11001中的一位2。
- 右边的 1 称为最低有效位 (LSB)
- 左边的 1 称为最高有效位 (MSB)
如何将十进制转换为二进制
方法#1:
110012 十进制数是 25。要将 25 转换为二进制数字系统,我们需要以扩展形式写出 25,同时确保每个加数都可以写为 2 的幂。
25 = 16 + 8 + 1 = 24 + 23 + 20
为了达到 25,我们需要 1 16人一组, 1 8人一组, 0 4人一组, 0 2人一组,以及 1。
从右向左开始,1排在第一位(20), 0, 排在第二位(21), 0 排在第三位(22), 1 排在第四位(23),1 排在第五位(24)如下图所示。
25 的二进制是 110012
请注意,没有两个和四个的分组。结果,第二位和第三位都填了零。
二进制数系统中如何进行分组。从 10 进制转换为 2 进制时要遵循的一般准则
小组从第n名到第一名。这意味着您必须首先创建一个具有尽可能高的 2 次方的组。
例如,我正在尝试将 45 转换为二进制数字系统。问问自己,“2 小于 45 的最大幂是多少?”
26 = 64. 25 = 32. 所以,2小于45的最高次方是25 = 32
由于 32 排在第六位,因此将 1 放入 第六名。然后尝试找出之前的位值是什么。
45 – 32 = 13
问问自己,“2 比 13 的最大幂是多少?”
24 = 16. 23 = 8. 所以,2小于13的最高次方是23 = 8
由于 8 排在第四位,因此将 1 放入 第四名。然后尝试找出之前的位值是什么。
13 – 8 = 5
问自己:“2 小于 5 的最大幂是多少?”
23 = 8. 22 = 4. 所以,2小于5的最高次方是22 = 4
由于 4 排在第三位,因此将 1 放入 第三名。然后尝试找出之前的位值是什么。
5 – 4 = 1 并且 1 进入 首位。
请注意,您没有在第五位和第二位中添加任何内容,因此这些位置中会添加零。
因此,45转换为二进制数是101101。
也可以写45十 或101101二
阅读时要非常小心 101101二!
1011012 读为一零一一零一基数为 2。
方法#2:
步骤1
将被除数 25 除以 2 并编写除法算法。
步骤2
使用步骤 1 中获得的商作为新的股息。将新的被除数除以 2,并再次编写除法算法。继续这样做,直到商为0。
使用方法 #2,以下是如何将十进制数 25 转换为二进制数。
25 = 2 x 12 + 1
12 = 2 x 6 + 0
6 = 2 x 3 + 0
3 = 2 x 1 + 1
1 = 2 x 0 + 1
把从下到上得到的所有余数写成 1100012
二进制到十进制转换表 | |||
| 二进制 | 十进制 | 二进制 | 十进制 |
| 0 | 0 | 10000 | 16 |
| 1 | 1 | 10001 | 17 号 |
| 10 | 2 | 10010 | 18 |
| 11 | 3 | 10011 | 19 |
| 100 | 4 | 10100 | 20 |
| 101 | 5 | 10101 | 21 |
| 110 | 6 | 10110 | 22 |
| 111 | 7 | 10111 | 23 |
| 1000 | 8 | 11000 | 24 |
| 1001 | 9 | 11001 | 25 |
| 1010 | 10 | 11010 | 26 |
| 1011 | 11 | 11011 | 27 |
| 1100 | 12 | 11100 | 28 |
| 1101 | 13 | 11101 | 29 |
| 1110 | 14 | 11110 | 30 |
| 1111 | 15 | 11111 | 31 |
十进制数系统与二进制数系统的异同
二进制数字系统和我们熟悉的以 10 为基数的计数系统之间的主要区别在于,分组是以 2 为一组而不是 10 为一组。
例如,要使用棍子表示 10 进制的 24,您可以使用两组 10 和 4,如下所示。
但有一些重要的事情需要记住,这是充分理解本课的关键!
- 数字 0,1,2,3,4,5,6,7,8,9 用于表示所有可能的数字。请注意,基数 10 有 10 个数字,因此基数是 10。
- 根据数字有多大,我们以十为一组,以百为一组,以千为一组,以万为一组……(这些是10的幂:101 = 10, 102 = 100, 103 = 1000)
- 如果数字小于 10(例如 8 和 9),则该数字将占据个位值。
- 如果数字大于 9 且小于 100,例如 10、55 和 98,则 10 组将占据十位值。
- 如果数字大于 99 且小于 1000,例如 100、255 和 999,则百位组将占据百位值。
例如,仔细研究以下数字,看看它是如何组织的。

由于人数超过99,我们只好以110为一组。另请注意如何将百组放入百位值中,以及如何将十组放入十位值中。

类似地,二进制数系统也有自己的位值。
- 数字 0,1 用于表示二进制数系统中所有可能的数字。请注意,基数 2 有 2 位数字来表示所有可能的数字。
- 根据数字有多大,我们将 2、4、8、16、32 等分组…(这些是 2 的幂:21 = 2, 22 = 4, 23 = 8)
- 如果数字小于 2(例如 1),则无需创建组。而这个数字将占据 第一名的价值。这个位值对应于以 10 为基数的个位。实际上这个 1 在二进制系统和以 10 为基数系统中是相同的。
- 如果一个数字大于 1 且小于 4,例如 2 和 3,则一组两个将占据 第二位值。您也可以将其称为“二位”值。
- 如果一个数字大于 3 且小于 8(例如 4 和 7),则四个一组将占据 第三位值。您也可以将其称为“四”位值
- 如果一个数字大于 7 且小于 16,例如 8、11 和 14,则一组 8 将占据 第四位值。您也可以将其称为“八”位值。
- 如果一个数字大于 15 且小于 32,例如 16、21 和 30,则一组 16 将占据 第五位值。您也可以将其称为“十六”位值。
- 如果一个数字大于 31 且小于 64,例如 32、45 和 63,则一组 32 将占据 第六名价值。您也可以将其称为“三十二”位值。
由于我们仅使用 0 和 1 来表示数字,因此不可能使用数字 2 或任何大于 2 的数字来编写二进制数。
二进制数系统的应用
以 2 为基数的数字系统在计算机技术中有许多应用。例如,每台计算机都使用二进制编号系统在内部存储数字、图形和字母等数据。
在每台计算机中,通常都有一个用于存储整数的最大位数。如今,该值通常为 16、24 或 32 位。然而,许多 20 世纪 70 年代制造的计算机仅使用 8 位来存储数据。
8 位有 8 个 1,即二进制数 111111112
111111112 = 27 + 26 + 25 + 24 + 23 + 22 + 21 + 20 = 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255。
对于 8 位计算机,计算机上产生大于 255 的整数值的任何操作都会产生错误,因为所有内存位置都已用完。不过,16 位计算机可以生成最大值为 65535 的整数。您可以明白为什么需要创建可以存储更多数据的计算机。
十进制转二进制计算器
例如,在计算器中输入 45,您将看到答案是 101101,如上所示。
