位运算符规律小结

1,异或运算^

1)0和任何数异或都得到原来的数

2)两个相同的数字异或得0.利用该性质常用来寻找数称对出现时缺失的某一个数

异或运算可以用来

1)判断一个数字是否是偶数(二进制表示中只有一位是0,n^(n-1)=0)

2)寻找缺失的数字,如0-n中缺失的数字

3)不使用第三方变量交换两个变量的值

4)使用位运算来实现常见的运算符,如两个数相加,计算两个数字的平均值等(蒋&和^,以及移位结合起来考虑))

5)计算一个数值的二进制中包含1的个数(p70)

6)将一个整数的奇偶位互换

((x&0xaaaaaaaa)>>1)|((x&0x55555555)<<1)

位运算符规律小结

时间: 2024-10-20 16:33:33

位运算符规律小结的相关文章

Java的位运算符详解实例

Java的位运算符详解实例——与(&).非(~).或(|).异或(^).右移(>>).左移(<<).无符号右移(>>>) 位运算符主要针对二进制, 它包括了:“与”.“非”.“或”.“异或”."右移"."左移"."无符号右移". 从表面上看似乎有点像逻辑运算符, 但逻辑运算符是针对两个关系运算符来进行逻辑运算, 而位运算符主要针对两个二进制数的位进行逻辑运算. 下面详细介绍每个位运算符. 1.与运

Java的位运算符具体解释实例——与(&amp;amp;)、非(~)、或(|)、异或(^)

位运算符主要针对二进制,它包含了:“与”.“非”.“或”.“异或”.从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算.以下具体介绍每一个位运算符. 1.与运算符与运算符用符号“&”表示,其使用规律例如以下:两个操作数中位都为1,结果才为1,否则结果为0,比如以下的程序段.public class data13{public static void main(String[] args){int a=129;int b=

初学c课程笔记整理5--&gt;&gt;进制(+位运算符变量)及一些补充

是什么?有什么用?用在什么地方?(理解) 养成良好的编程习惯; 培养编程思想: 写代码之前应该先分析需求,分析完需求再开始写代码:(写注释) 1.进制 1.1进制的概念 是一种计数的方式,数值的表现形式 1.2常见的进制 十进制.二进制.八进制.十六进制 1.3进制的进位方法 十进制 0.1.2.3.4.5.6.7.8.9 逢十进一 二进制 0.1 逢二进一 书写形式:需要以0b或者0B开头,比如0b101 八进制 0.1.2.3.4.5.6.7 逢八进一 书写形式:在前面加个0,比如045 十

java中的基本运算符、取余、逻辑运算符、逻辑运算符、位运算符、移位运算符

注意事项: 常量在编译的时候会赋值,变量在运行的时候才在内存中分配空间赋值. 赋值运算符 += -+ *+ %= \= 在java编译器会进行强制类型转换 取余: 在java中做取余运算的是时候,结果的正负号是取决于被除数. 逻辑运算符&且 |或 !非 ^异或 &&短路与 ||短路或 位运算符:直接操作二进制位的. & (与) 6 & 3 = 2 0000 0110 可以把1看成true & 0000 0011 0看成false --------------

Java的位运算符详解实例——与(&amp;)、非(~)、或(|)、异或(^)

位运算符主要针对二进制,它包括了:"与"."非"."或"."异或".从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算.下面详细介绍每个位运算符. 1.与运算符 与运算符用符号"&"表示,其使用规律如下: 两个操作数中位都为1,结果才为1,否则结果为0,例如下面的程序段. public class data13 { publ

浅析java位运算符计算方式

位运算符主要针对二进制,它包括了:"与"."或"."异或". 1.与运算符(&表示)运算规律如下:两个操作数中位都为1,结果才为1,否则结果为0,例如: int a=5;int b=2;System.out.println("a 和b 与的结果是:"+(a&b)); 运行结果:a 和b 与的结果是:0分析:a的值是5,转换成二进制就是101,而b的值是2,转换成二进制就是10.根据与运算符的运算规律,只有两个位

Java的位运算符—— 与(&amp;)、非(~)、或(|)、异或(^)

位运算符主要针对二进制,它包括了:“与”.“非”.“或”.“异或”.从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算.下面详细介绍每个位运算符. 1.与运算符与运算符用符号“&”表示,其使用规律如下:两个操作数中位都为1,结果才为1,否则结果为0,例如下面的程序段. public class data1 { public static void main(String[] args) { int a=129; int

逻辑运算符和位运算符

逻辑运算符对布尔型数据进行操作,并返回布尔型值. 逻辑与&&:当且仅当左右两个关系表达式均为true时返回true,否则返回FALSE. 逻辑或||:当且仅当左右两个关系表达式均为FALSE时返回true,否则返回true. 逻辑非!:单目运算符,对关系表达式取反. 位运算符主要针对两个操作数的二进制形式进行逻辑运算. 与&:两个操作数二进制形式的对应位中均为1时,相应的位返回1,否则返回0. 例如128&129,返回结果128. 129的二进制形式是10000001,12

[转]Java的位运算符详解实例——与(&amp;)、非(~)、或(|)、异或(^)

位运算符主要针对二进制,它包括了:“与”.“非”.“或”.“异或”.从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算.下面详细介绍每个位运算符. 1.与运算符与运算符用符号“&”表示,其使用规律如下:两个操作数中位都为1,结果才为1,否则结果为0,例如下面的程序段.public class data13{public static void main(String[] args){int a=129;int b=128