算法与数据结构之位运算

本文深入介绍了位运算中的按位与(&)、按位或(|)和异或(^)操作。通过将数字转换为二进制并应用特定的运算规则,阐述了它们如何影响二进制位,从而得出运算结果。举例说明了这些运算在实际中的应用,帮助理解位运算的基本原理。
摘要由CSDN通过智能技术生成

按位与运算(&)

1、将参与运算的两个数转换成二进制进行“与”运算

2、运算规则:只有两个数的二进制同为1的时候,结果才为1,否则都为0(负数按补码的形式参与运算)

* 正数的原码、反码、补码都是本身

* 负数的反码是在原码的基础上符号位不变,其余取反;补码是在原码的基础上符号位不变,其余取反,最后加1。

3、即 0 & 0= 0 ,0 & 1= 0,1 & 0= 0, 1 & 1= 1。

4、例:2 &7  即 00000010 & 00000111 = 00000010 ,所以 2 & 7的值为2。

按位或运算(|)

1、将参与运算的两个数转换成二进制进行“或”运算

2、运算规则:两个数的二进制其中有一个为1的时候,结果为1

3、即 0 & 0= 0 ,0 & 1= 1,1 & 0= 1, 1 & 1= 1。

4、例:2 &7  即 00000010 & 00000111 = 00000111 ,所以 2 | 7的值为7。

异或运算符(^)

1、将参与运算的两个数转换成二进制进行“异或”运算

2、运算规则:两个数的二进制相同为1,不同为0

3、即 0 & 0= 0 ,0 & 1= 1,1 & 0= 1, 1 & 1= 0。

4、例:2 &7  即 00000010 & 00000111 = 00000101 ,所以 2 ^7的值为5。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值