什么是十进制数系统?
十进制数系统,亦称为基数-10系统,是日常生活中最常用的数字系统。它由十个数字0到9组成,其中每个数字的位置代表10的幂。十进制系统是一个位置系统,这意味着每个数字的位置决定了它的值。例如:
957 = (9 × 10²) + (5 × 10¹) + (7 × 10⁰) = 900 + 50 + 7 = 957
这种位置原则允许使用这十个数字表示任何数字,无论它有多大。
人类自然倾向于使用十进制系统,因为我们有十根手指,这使得在几千年前进行计数和算术时很直观。包括埃及人和印度人在内的古代文明,都是围绕这个基数结构了他们的计数系统。
什么是二进制数系统?
二进制数系统相较之下是一个基数-2的数字系统,仅使用两个数字:0和1。这些数字称为位,即“二进制数字”的缩写。二进制数中的每个位置表示2的幂,类似于十进制数中每个位置表示10的幂。例如:
1011₂ = (1 × 2³) + (0 × 2²) + (1 × 2¹) + (1 × 2⁰)
= 8 + 0 + 2 + 1 = 11₁₀
二进制系统在计算和电子领域中是基础,因为数字系统使用两种状态——开(1)和关(0)——来存储和处理数据。
公式
从十进制(基数10)转换到二进制(基数2)可以通过连续除以2来进行。步骤如下:
用2除十进制数。
记录余数(0或1)。
再次用2除商。
继续这一过程直到商为0。
二进制表示通过从下到上读取余数而形成。
从数学上过程可以表示为:
如果
N10=an×10n+an−1×10n−1+⋯+a0×100N_{10} = a_n \times 10^n + a_{n-1} \times 10^{n-1} + \dots + a_0 \times 10^0N10=an×10n+an−1×10n−1+⋯+a0×100
那么,转换为二进制给出:
N10=bk×2k+bk−1×2k−1+⋯+b0×20N_{10} = b_k \times 2^k + b_{k-1} \times 2^{k-1} + \dots + b_0 \times 2^0N10=bk×2k+bk−1×2k−1+⋯+b0×20
其中每个 bi∈{0,1}b_i \in \{0, 1\}bi∈{0,1}。
一步步例子
例子1:将89₁₀转换为二进制
运算商余数89 ÷ 244144 ÷ 222022 ÷ 211011 ÷ 2515 ÷ 2212 ÷ 2101 ÷ 201
从下到上读取余数:
89₁₀ = 1011001₂
验证:
(1×26)+(0×25)+(1×24)+(1×23)+(0×22)+(0×21)+(1×20)=64+0+16+8+0+0+1=89(1×2^6) + (0×2^5) + (1×2^4) + (1×2^3) + (0×2^2) + (0×2^1) + (1×2^0) = 64 + 0 + 16 + 8 + 0 + 0 + 1 = 89(1×26)+(0×25)+(1×24)+(1×23)+(0×22)+(0×21)+(1×20)=64+0+16+8+0+0+1=89
例子2:将十进制数16转换为二进制
运算商余数16 ÷ 2808 ÷ 2404 ÷ 2202 ÷ 2101 ÷ 201
从下到上读取余数:
16₁₀ = 10000₂
验证:
(1×24)+(0×23)+(0×22)+(0×21)+(0×20)=16+0+0+0+0=16(1×2^4) + (0×2^3) + (0×2^2) + (0×2^1) + (0×2^0) = 16 + 0 + 0 + 0 + 0 = 16(1×24)+(0×23)+(0×22)+(0×21)+(0×20)=16+0+0+0+0=16
历史背景
二进制系统起源于古代。最早的类似二进制的系统记录可追溯到中国的*《易经》*(“变易之书”),在公元前1000年左右使用类似二进制组合的占卜图案。
然而,现代二进制算术的正式基础是由戈特弗里德·威廉·莱布尼茨在1703年建立的。他认识到二进制可以仅使用数字0和1表示所有数字,创建了一个在自然界简单的二元性中回响的通用系统——光明与黑暗,是与否,开与关。
数个世纪后,在20世纪中期,数字计算机采用了二进制逻辑作为机器计算的基石。电路的两种状态——高电压 (1) 和低电压 (0)——完美地适应了二进制表示,使得复杂的数据处理、算术运算和存储成为可能。
转换技巧和提示
在除法后的余数读取时,请始终记得从下到上。
二进制数的最大位值是1。
对于较小的数字,二进制等价物往往可以被记住:
1₁₀ = 1₂
2₁₀ = 10₂
4₁₀ = 100₂
8₁₀ = 1000₂
16₁₀ = 10000₂
二进制数以2的幂次增长。注意每个新位如何将可能的数值范围加倍。
逆过程(二进制到十进制)涉及将每个位乘以其2的幂次并将它们相加。
常见问题解答
如何一步步将2020转换为二进制?
运算商余数2020 ÷ 2101001010 ÷ 25050505 ÷ 22521252 ÷ 21260126 ÷ 263063 ÷ 231131 ÷ 215115 ÷ 2717 ÷ 2313 ÷ 2111 ÷ 201
从下到上读取余数:11111100100₂
如何快速检查二进制数是否正确?
为了验证,扩展每个二进制数字乘以其位置上的2的幂次并将结果相加。
例如,检查10011₂:
(1×24)+(0×23)+(0×22)+(1×21)+(1×20)=16+0+0+2+1=19(1×2^4)+(0×2^3)+(0×2^2)+(1×2^1)+(1×2^0)=16+0+0+2+1=19(1×24)+(0×23)+(0×22)+(1×21)+(1×20)=16+0+0+2+1=19.
因此,10011₂ = 19₁₀。
如何为小数字进行心算转换?
练习记忆二进制表示到16。
每增加一个位数,前一个值会翻倍:
1=1₂, 2=10₂, 3=11₂, 4=100₂, 5=101₂, 6=110₂, 7=111₂, 8=1000₂, 等等。
这种心算模式有助于在无需完整除法的情况下进行估计。
199从十进制到二进制
运算商余数199 ÷ 299199 ÷ 249149 ÷ 224124 ÷ 212012 ÷ 2606 ÷ 2303 ÷ 2111 ÷ 201
从下到上读取余数:11000111₂