python位运算符:python的位运算符是把数字看作二进制来进行计算的。
按位与(&):如果两个二进位都为1,则该位结果为1,否则为0
按位或(|):只要一个为1,则为1,否则为0
按位异或(^):两个二进位相异为为1(即两个二进位要相反),否则为0
取反(~):对数据的每个二进制位取反,即把1变0,把0变1
左移动:运算数的各二进位全部向左移若干位
右移动:运算数的各二进位全部向右移若干位
其中,c++语言中,对于左右移动,在左移n位的时候,最左边n位被遗弃,同时右边布上n个0;右移n位的时候复杂一点,如果数字是一个无符号数值,则用0补上左边的n位,如果数字是一个有符号数值,则用数值的符号为填充左边的n位,也就是说,整数就填充0,负数就填充1
原文:https://www.cnblogs.com/tsdblogs/p/10635084.html