C++6.6学习(6)运算符

本文详细解析了C++中的位运算符,包括按位与(&amp;), 按位或(|), 异或(^), 取反(~),以及左移(<<)和右移(>>)操作。通过A=60和B=13的二进制示例,展示了这些运算符的实际应用和结果。
摘要由CSDN通过智能技术生成

位运算符
位运算符作用于位,并逐位执行操作。&、 | 和 ^ 的真值表如下所示:

【p】【q】【p & q】 【p | q】【 p ^ q】
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1

假设如果 A = 60,且 B = 13,现在以二进制格式表示,它们如下所示:

A = 0011 1100

B = 0000 1101


A&B = 0000 1100

A|B = 0011 1101

A^B = 0011 0001

~A = 1100 0011

下表显示了 C++ 支持的位运算符。假设变量 A 的值为 60,变量 B 的值为 13,则:

运算符 描述 实例

1.&
按位与操作,按二进制位进行"与"运算。运算规则:

0&0=0;
0&1=0;
1&0=0;
1&1=1;
(A & B) 将得到 12,即为 0000 1100

2.|
按位或运算符,按二进制位进行"或"运算。运算规则:

0|0=0;
0|1=1;
1|0=1;
1|1=1;
(A | B) 将得到 61,即为 0011 1101

3.^
异或运算符,按二进制位进行"异或"运算。运算规则:

0^0=0;
0^1=1;
1^0=1;
1^1=0;
(A ^ B) 将得到 49,即为 0011 0001

4.~
取反运算符,按二进制位进行"取反"运算。运算规则:

~1=-2;
~0=1;
(~A ) 将得到 -61,即为 1100 0011,一个有符号二进制数的补码形式。
5.<< 二进制左移运算符。将一个运算对象的各二进制位全部左移若干位(左边的二进制位丢弃,右边补0)。 A << 2 将得到 240,即为 1111 0000
6.>> 二进制右移运算符。将一个数的各二进制位全部右移若干位,正数左补0,负数左补1,右边丢弃。 A >> 2 将得到 15,即为 0000 1111

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿斯卡码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值