本篇文章的前置知识:数学分析
二进制
我们视二进制和十进制为一个数的不同表达形式
命题:二进制转化为十进制
二进制的数字表示为 ⋯ b 2 b 1 b 0 . b − 1 b − 2 ⋯ \cdots b_2b_1b_0.b_{-1}b_{-2}\cdots ⋯b2b1b0.b−1b−2⋯这等价于十进制下的
⋯ b 2 × 2 2 + b 1 × 2 1 + b 0 × 2 0 + b − 1 × 2 − 1 + b − 2 × 2 − 2 + ⋯ \cdots b_2\times 2^{2}+b_1\times 2^{1}+b_0\times 2^0+b_{-1}\times 2^{-1}+b_{-2}\times 2^{-2}+\cdots ⋯b2×22+b1×21+b0×20+b−1×2−1+b−2×2−2+⋯
命题:十进制转化为二进制
整数部分:十进制整数不断除2,记录除数及余数,直至除数为0,从后往前依次写下余数即为二进制下的数字,如下例 ( 53 ) 10 (53)_{10} (53)10
53 ÷ 2 = 26 余 1 26 ÷ 2 = 13 余 0 13 ÷ 2 = 6 余 1 6 ÷ 2 = 3 余 0 3 ÷ 2 = 1 余 1 1 ÷ 2 = 0 余 1 53\div 2= 26 \text{余} 1\\ 26\div 2=13 \text{余} 0\\ 13\div 2=6 \text{余} 1\\ 6\div 2=3 \text{余} 0\\ 3\div 2=1 \text{余} 1\\ 1\div 2=0 \text{余} 1 53÷2=26余126÷2=13余013÷2=6余16÷2=3余03÷2=1余11÷2=0余1则得 ( 53 ) 10 = ( 110101. ) 2 (53)_{10}=(110101.)_2 (53)10=(110101.)2
小数部分:十进制小数不断乘2,记录整数部分,从前往后依次写下整数部分,直至小数部分为 0,如下例 ( 0.7 ) 10 (0.7)_{10} (0.7)10
0.7 × 2 = 0.4 + 1 0.4 × 2 = 0.8 + 0 0.8 × 2 = 0.6 + 1 0.6 × 2 = 0.2 + 1 0.2 × 2 = 0.4 + 0 ⋯ 0.7\times 2=0.4+1\\ 0.4\times 2=0.8+0\\ 0.8\times 2=0.6+1\\ 0.6\times 2=0.2+1\\ 0.2\times 2=0.4 +0\\ \cdots 0.7×2=0.4+10.4×2=0.8+00.8×2=0.6+10.6×2=0.2+10.2×2=0.4+0⋯发现计算过程开始循环,故 ( 0.7 ) 10 = ( 0.1 0110 ‾ ) 2 (0.7)_{10}=(0.1\overline{0110})_2 (0.7)10