按位与或异或等运算方法
Posted strive-ss
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了按位与或异或等运算方法相关的知识,希望对你有一定的参考价值。
1.按位与运算符(&)
简单来说就是,对应的二进制位有一个或者两个为1,则该位的运算结果为1,否则为0. 如下: 1010
10:1010 15:1111 就是 : 1010&1111 1111 上下结果:1111。
记住只要位运算上面有1 就要保留1 !
2.按位或运算符(|)
对应的二进制位中必须都是1,则结果为1,否则为0. 简单来说也就是:1*1=1,1*0=0. 如下: 1010
10 : 1010 15 : 1111 就是 1010|1111 1111 上下结果就是:1010
记住口诀就是 1*1=1 1*0=0
3.按位异或运算符(^)
对应的二进制位中必须都是1,则结果为1,否则为0. 简单来说也就是:1*1=0,1*0=1. 如下: 1010
10 : 1010 15 : 1111 就是 1010^1111 1111 上下结果就是:0101
记住口诀就是 1*1=0 1*0=1 和按位或运算正好相反
4.取反运算符(~)
将对应的二进制数逐位反转,即1取反为0,0取反为1 。
“~”取反运算符的级别高于位于运算符“&”。因此如果两个运算符在一块的话,先取反,再进行位于运算!
还是拿10和15举例子:10 : 1010 取反为 ~10 :0101 即 ~10=5;15 :1111 取反为 ~15 : 0000 即 0。
5&~1等于 5 :0101 1 :1 取反为0 则5&~1=0100 即等于 4
5.左移运算符(<<)
我觉得概念没有直接举例子来的通俗易懂
………………1的二进制是 00000001 1<<2 后就是 00000100即4 1<<3就是00001000即8
4<<2 就是00010000 即16
6.右移运算符(>>)
和左移运算符相反 不过1>>2 就是00000000 即0!
以上是关于按位与或异或等运算方法的主要内容,如果未能解决你的问题,请参考以下文章