一、二进制转换
In [1]:
a = 3 print(bin(a)) #bin()转换为二进制
0b11
In [2]:
b = 0b10 print(int(b)) #int()转换为十进制
2
负数的二进制
求-5的二进制表示
step1:先求正数的二进制。5->0000 0101
step2:取反。 1111 1010
step3:反码加1。 1111 1011
二、位运算
与: &
或: |
非: !
异或:^
左移:<<
右移:>>
In [3]:
print(3 & 2) # 0000 0011 & 0000 0010 = 0000 0010
2
In [4]:
print(5 | 3) # 0000 0101 | 0000 0011 = 0000 0111
7
In [5]:
print(~5) # ~0000 0101 = 1111 1010 看第一位符号位,为1是负数。取反:0000 0101 加1:0000 0110
-6
In [6]:
print(~10) # ~0000 1010 = 1111 0101 取反:0000 1010 加1:0000 1011
-11
In [7]:
print(~3) # ~0000 0011 = 1111 1100 取反:0000 0011 加1:0000 0100
-4
In [8]:
print(3^5) # 0000 0011 ^ 0000 0101 = 0000 0110
6
左移n位相当于乘以2的n次方
In [9]:
print(2<<1) # 0000 0010 << 1 = 0000 0100
4
右移n位相当于除以2的n次方
In [10]:
print(2>>1) # 0000 0010 >> 1 = 0000 0001
本文详细介绍了二进制转换方法,包括正数和负数的二进制表示,以及如何使用Python内置函数进行转换。同时,深入解析了位运算符的功能与应用,如与(&)、或(|)、非(!)、异或(^)、左移(<<)和右移(>>)等,并通过实例展示了它们的操作效果。
4341

被折叠的 条评论
为什么被折叠?



