(1)首先学会十进制化二进制

十进制整数转换为二进制整数十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2整除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为小于1时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。

python 二进制库 python 二进制处理_有效位

(2)二进制化十进制
二进制转换成十进制:基数乘以权,然后相加,简化运算时可以把数位数是0的项不写出来,(因为0乘以其他不为0的数都是0)。小数部分也一样,但精确度较少。

方法:“按权展开求和”

例:10001111

1×2⁷+1×2³+1×2²+1×2¹+1×2⁰=143,所以10001111的十进制表示为143。

1.左移

符号:<<
例子:3<<2
就是把3左移2位,首先把3化为二进制,3的二进制是1111左移2位变为11001100再化十进制为12.

2.右移

符号:>>
例子:11>>1
把11右移1位,11的二进制为1011,右移1位是101,然后化为十进制是 5.

3.位与运算

符号:&

例子:3&7

首先把3和7分别化为二进制,11111,然后

python 二进制库 python 二进制处理_有效位_02


运算规则是:相同的部分写1,不同的部分写0.

得出011,再化为十进制是3

4.位或运算

符号:丨

例子:3丨8

首先把3和8化为二进制,111000,然后

python 二进制库 python 二进制处理_二进制数_03


运算规则:有1则写1,无1则为0.

得出1011,再化为十进制是11.

5.位异或运算

符号:^

例子:3^5

先把3和5化为二进制,11101,然后

python 二进制库 python 二进制处理_有效位_04


运算规则:相同的写0,不同的写1.

得出110,再化为十进制是6.

注意:

位运算符只能用于整数,其内部执行过程:首先将整数转换为二进制数,然后对齐,必要的时候左侧补0,按位进行运算,最后再把计算结果转换为十进制数字返回。