计算机内部是通过二进制来处理数据的,因为计算机的基本逻辑电路(如与门、或门、非门)只能表示两种状态:开(通常表示为1)和关(通常表示为0)。因此,计算机能直接读懂的是二进制数。
不过,人类通常习惯使用十进制数,所以我们需要将十进制数转换成二进制数,计算机才能识别和处理。转换方法如下:
十进制转二进制
将十进制数除以2,记录余数。
将商继续除以2,再记录余数。
重复上述步骤,直到商为0为止。
将所有余数逆序排列,即为该十进制数的二进制表示。
例如,将十进制数2021转换为二进制数:
2021 ÷ 2 = 1010 余 1
1010 ÷ 2 = 505 余 0
505 ÷ 2 = 252 余 1
252 ÷ 2 = 126 余 0
126 ÷ 2 = 63 余 0
63 ÷ 2 = 31 余 1
31 ÷ 2 = 15 余 1
15 ÷ 2 = 7 余 1
7 ÷ 2 = 3 余 1
3 ÷ 2 = 1 余 1
1 ÷ 2 = 0 余 1
逆序排列余数得到:11111100101,即2021的二进制表示为11111100101。
二进制转十进制
将二进制数的每一位数字乘以对应的权值(2的幂次方),然后将结果相加。
例如,将二进制数11111100101转换为十进制数:
1 × 2^10 + 1 × 2^9 + 1 × 2^8 + 1 × 2^7 + 1 × 2^6 + 0 × 2^5 + 0 × 2^4 + 1 × 2^3 + 0 × 2^2 + 1 × 2^1 + 1 × 2^0
= 1024 + 512 + 256 + 128 + 64 + 0 + 0 + 8 + 0 + 2 + 1
= 2021
因此,二进制数11111100101对应的十进制数是2021。
总结:
计算机内部使用二进制表示和处理数据。
十进制数需要转换成二进制数,计算机才能识别。
转换方法包括除以2取余法(用于十进制转二进制)和按权展开求和法(用于二进制转十进制)。