二进制是一种以2为基数的数制,其数值计算规则和十进制有所不同。以下是二进制数值计算的基本方法和规则:
一、二进制与十进制的转换
二进制转十进制 按位权展开法:
$$N = sum_{i=0}^{n-1} K^i cdot C^i$$
其中,$K$为基数(2),$C$为进制(10),$n$为位数。例如:
- $(1011)_2 = 1 cdot 2^3 + 0 cdot 2^2 + 1 cdot 2^1 + 1 cdot 2^0 = 8 + 0 + 2 + 1 = 11_{10}$
- $(1101)_2 = 1 cdot 2^3 + 1 cdot 2^2 + 0 cdot 2^1 + 1 cdot 2^0 = 8 + 4 + 0 + 1 = 13_{10}$
十进制转二进制
除2取余法:
- 将十进制数不断除以2,记录余数,余数从下到上排列。例如:
- $(13)_{10}$:
- 13 ÷ 2 = 6 余 1
- 6 ÷ 2 = 3 余 0
- 3 ÷ 2 = 1 余 1
- 1 ÷ 2 = 0 余 1
- 结果为 $(1101)_2$
二、二进制计算规则
加法运算
- 0+0=0,0+1=1,1+0=1,1+1=10(逢二进一)
- 示例:
- $(1011)_2 + (1011)_2 = 10100_2$
- 计算过程:
- 从右往左逐位相加,1+1=10,进位后得到10100
乘法运算
- 0×0=0,1×0=0,0×1=0,1×1=1
- 示例:
- $(1011)_2 times (1011)_2 = 1101001_2$
- 计算过程:
- 按位相乘后相加,例如1×1=1,1×1+0×1=1,1×0+1×1=1,1×1=1等
其他运算
- 除法: 0÷1=0,1÷1=1 - 减法
三、二进制在计算机中的表示
补码表示:计算机以补码形式存储有符号数,正数补码与原码相同,负数补码为原码取反加1
位权与进制转换:
$$2^0=1, 2^1=2, 2^2=4, 2^3=8, dots$$
例如:
$(1101)_2 = 1×2^3 + 1×2^2 + 0×2^1 + 1×2^0 = 13_{10}$$
四、常见误区
进制转换错误:二进制满2进1,例如3的二进制为11($2^1+2^0$),而非10(十进制)
符号位混淆:最高位为符号位,0表示正数,1表示负数
通过以上方法和规则,可以系统地进行二进制数值计算与转换。