位运算

1.

& : 与 操作.
作用于两个二进制数,当然也可以对整型数据进行操作(当两边为整型数据会自动转化为二进制数).二进制与用来对位进行置零或者复位.如果两个值进行二进制与,只有当两个对应的位都为1时结果位上为1(同1结果为1,有0结果为0),其他情况都为0

.如下:

01011001 & 00101001

结果为:00001001
      
2.

| :或 操作.
和1的与操作类似.用来合并值.只有当两个对应位都为0,结果位为0(有1结果为1,同0 结果为0),其他情况都为1.

例如:

01011001 | 00101001

结果为:01111001
      
3.

^ :异或 操作.
这个运算符当两个值在某一位上相同时结果位为0,不同结果为1.如一个是1一个是0(相同为0
不同为1),结果位是1;两个都为1或者0结果位是0;

例如:

01011001^00101001

结果为:01110000
      
4.

~ :求补操作.
这个运算符只对一个二进制数据进行操作,对该数每一位取反,(即1变为0,0变为1).

例如:

~01011001

结果为:10100110

最后两个为移位操作符.这两个操作符用来对一个值中的位左移或右移某个特定数字的位数.

">>“右移操作.”<<"左移操作.
"<<"左移操作:向左移动n位,相当于原数乘以2的n次方;存在问题:左移可能改变一个数的正负;
">>"右移操作:向右移动n位,值等于原值除以2的n次方;

例如:01011001>>2  01011001<<2
结果: 0010110   01100100

1&单数结果为1
1&双数结果为0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值