700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > python按位右移的作用_python入门之左移 右移 按位与 按位或 按位异或 按位取反...

python按位右移的作用_python入门之左移 右移 按位与 按位或 按位异或 按位取反...

时间:2024-06-26 15:52:28

相关推荐

python按位右移的作用_python入门之左移 右移 按位与 按位或 按位异或 按位取反...

1.<

将数字的位向左移动指定的位数(二进制表示);

例:2<<2输出8

2的二进制表示为10,向左移动2位为1000,十进制为8.

2.>>(右移)

将数字的位向右移动指定的位数(二进制表示);

例:11>>1输出5

11的二进制表示为1011,向右移动1位为101,十进制为5.

3.&(按位与)

将数字(二进制)对应位数比较,若对应位都为1,则对应位为1,否则为0;

例:5&3输出1

5的二进制为101,3的二进制为011,按位与结果为001,十进制为1.

4.|(按位或)

将数字(二进制)对应位数比较,若对应位至少有一个为1,则对应位为1,若对应位都为0,则对应位为0;

例:5|3输出7

5的二进制为101,3的二进制为011,按位或结果为111,十进制为7.

5.^(按位异或)

将数字(二进制)对应位数比较,若对应位只有一个为1,则对应位为1,否则对应位为0;

例:5^3输出6

5的二进制为101,3的二进制为011,按位或结果为110,十进制为6.

6.~(按位取反)

计算机内部在做数学运算时(也就是计算机的0和1的运算),都是以补码为标准的,说白了计算机中就一种码那就是补码,而现实社会中的编码规则,例如原码、反码都是我们自定义的,为了和计算机中的补码形成转换关系。所以说在我们手工计算这类由计算机计算的01运算,要站在计算机的角度。因此首先就要将我们的原码反码全都先转为补码,再来计算.

正数的原、反、补码都是它本身;负数的原码最高位为1开头,反码是最高符号位不变,其余位在原码的基础上取反,补码是在反码的基础上+1即可得到.

例:~5输出6

5的补码:00000101

00000101按位取反,取反结果为: 11111010

这里的结果是用补码表示的,还是机器表示形式,转化为自然语言的编码,把结果转化为原码:

补码-1转为反码: 11111010 - 1 = 11111001

反码再取反转为原码:11111001 = 10000110

原码转为十进制,答案就是-6.

x按位取反运算公式为: -(x+1)

标签:右移,二进制,补码,取反,按位,对应,原码,位为

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。