位运算中的按位与(&),按位或(|),按位异或(^)

大家好,今天和大家分享的是位运算符中的按位与,按位或,按位异或

首先先声明一下:参加位运算的两个数都要用二进制来表示。

一般给的数都是十进制,十进制转化为二进制的方法如下:

位运算中的按位与(&),按位或(|),按位异或(^)_第1张图片

注意:如果给的是八进制,十六进制等,把2改成对应的进制数进行运算即可;

二进制转化为十进制方法如下:

位运算中的按位与(&),按位或(|),按位异或(^)_第2张图片

一.按位与运算符(&):

  1. 运算规则:两个数的二进制数对应的位数相同为1,不相同为0;

2. 例子:1&1=1; 1&0=0; 0&1=0; 0&0=0;

1&5也即(00 00 00 01)&(00 00 01 01)=(00 00 00 01)所以1&5=1

位运算中的按位与(&),按位或(|),按位异或(^)_第3张图片

二.按位或运算符(|):

1.运算规则:两个数的二进制数对应的位数只要有一个为1,即结果为1,两个都为0,及结果为0;

2.例子:1|0=1; 1|1=1; 0|1=1;0|0=0;

1|5也即(00 00 00 01)|(00 00 01 01)=00 00 01 01=5;所以1|5=5;

位运算中的按位与(&),按位或(|),按位异或(^)_第4张图片

三.按位异或运算符(^):

1.运算规则:两个数的二进制数对应的位数相同为0,不相同为1;

2.例子:1^0=1; 1^1=0; 0^0=0; 0^1=1;

1^5也即(00 00 00 01)|(00 00 01 01)=00 00 01 00=4 所以1^5=4;

位运算中的按位与(&),按位或(|),按位异或(^)_第5张图片

2023.01.15

From:努力进大厂的新青年

你可能感兴趣的:(c++,c语言)