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)
python入门之左移,右移,按位与,按位或,按位异或,按位取反相关推荐
- C语言按位与 按位或 按位异或 按位取反
与运算:& 两者都为1为1,否则为0 1&1=1, 1&0=0, 0&1=0, 0&0=0 或运算:| 两者都为0为0,否则为1 1|1 = 1, 1| ...
- C语言按位与 按位或 按位异或 按位取反(二)
位运算是指按二进制进行的运算.在系统软件中,常常需要处理二进制位的问题.C语言提供了6个位操作运算符.这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型 ...
- C语言按位与 按位或 按位异或 按位取反 (一)
与运算:& 两者都为1为1,否则为0 1&1=1, 1&0=0, 0&1=0, 0&0=0 或运算:| 两者都为0为0,否则为1 1|1 = 1, 1| ...
- Python菜鸟之python入门
python入门知识 1:python的产生与简介 Python是著名的"龟叔"Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言.龟 ...
- 位操作符详解(移位操作符(左移/右移)、按位与‘’操作符、按位或‘|’操作符、按位异或‘^’操作符)
位操作是程序设计中对位模式按位或二进制数的一元和二元操作: 在许多微处理器上,位运算与加减运算速度大致相同,但位运算的速度远快于乘法运算: 位操作符的使用,可以使我们在处理一些问题上方便许多. 移位操 ...
- 位运算符:按位与(),按位或(|),按位异或(^),取反(~)左移()和右移()
数据在内存中是以二进制的形式存放的,计算机存储数据的最小单位是位(bit),一个二进制位可以表示两种状态(0和1),一个字节通常由8位二进制位组成.C语言支持按位运算,按位运算也就是对字节或者字中的实 ...
- java中左移运算符解释_java左移右移运算符
位运算(只对byte.short.char.int.long有效) 左移和右移运算相当于实现整数乘以或除以2的n次方 2.7三元运算符表达式1的结果为true时,就为第二个表达式,如果为...... ...
- c语言负数左移右移_C语言位运算符:与、或、异或、取反,左移和右移
C语言位运算符:与.或.异或.取反.左移和右移 个位操作运算符.这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型. ,则该位的结果值为1,否则为0 | ...
- c/c++位操作简介--移位、位与、位或、异或
概述 C/C++里面位操作符表示为如下:左移位 << ,右移位 >>,位与 &,位或 | ,位异或 ^,按位求反~. 位操作符针对的是补码形式(可参见下面的例子,其实我 ...
最新文章
- 图解HashMap和HashSet的内部工作机制
- Java jdbc数据库连接池
- CentOS 6.0 xdmcp 配置
- 数学建模 聚类模型
- 使用QGIS将文本坐标转换为矢量文件
- java文件中获取创建日期_如何在Java中获取文件的上次修改日期
- 图神经网络(GCN)
- python编写骰子和的程序_简单掷骰子程序发行
- 天若OCR v5.0 自用免配置增强版
- Windows下Netron安装
- 取文件操作fopen(file open)
- 前端面试题集锦——算法
- 生活随笔--拆弹专家
- 大学生就业的三方协议基本概述
- msyql慢查询相关
- Maurice Wilkes
- 9个免费的 CSS 生成器网站
- 小草小草快点长大。。
- 深度经验总结:快逸报表工具单数据集版本和多数据集版本的主要区别之一
- Linux基本命令(完整版-详解)