二进制

数制

一般数制:

(N)R=i=Ki×Ri

常用数制:

符号 英文名 名称 基数 前缀
B binary 二进制 2
O octal 八进制 8
D decimal 十进制 10 0
H hexadecimal 十六进制 16 0x
其中十六进制使用:0~9、A、B、C、D、E、F
a=int('number',base=n)

二进制

使用 0 和 1 将事物或状态联系起来

带符号的二进制数

原码 Sign Magnitude:最高位为符号位,0+1
反码 One's Complement:符号位不变,其余数值位逐位取反
补码 Two's Complement:反码的最低位 +1

计算机内部采用补码进行运算,便于加法统一处理正负数

数值 原码 反码 补码
+5 00000101 00000101 00000101
-5 10000101 11111010 11111011

8421 BCD 码

Binary-Coded Decimal
二进制编码的十进制码,每个十进制数字(0-9)都被编码为一个四位的二进制数。这种编码方式使得十进制数的运算可以直接在计算机中进行,而不需要进行额外的转换步骤

例如:
18 的二进制码为:16+2 0001 0010
BCD 码则为:10+8 0001 1000
前一个四位表示十位 1 ,后一个四位表示个位 8

模二运算

模二加/减法

减法和加法的运算规则相同,每一位进行异或运算,不进行借位进位
1111+1010=1111-1010=0101

模二除法

每一位异或运算,不断右移

000110101  商
---------
101001000
1101
---------
01110
 1101
---------
 001110
   1101
---------
   001100
     1101
---------
	 0001 余数