位运算

作者: 洛梓煕 | 来源:发表于2020-05-25 16:13 被阅读0次

名称符号

按位与 &

按位或 |

按位异或 ^

按位取反 ~

左移运算 <<

右移运算 >>

&按位与的用法(相同为1不同为0)

例如1:3&8

3转化为二进制是0000 0011

8转化为二进制是0000 1000

00000011和00001000比较为0000 0000 (完全没有共同)所以为转化为十进制是0

例如2:3&5

3转化为二进制是0000 0011

5转化为二进制是0000 0101

00000011和00000101比较为00000001(有共同的1) 所以转化为十进制是1


|按位或的用法(只要有1这个位数上就是1,都为0的情况下才为0)

例如1:3|8

3转化为二进制是0000 0011

8转化为二进制是0000 1000

00000011和00001000比较为00001011 所以转化为十进制是11

例如2:3|5

3转化为二进制是0000 0011

5转化为二进制是0000 0101

00000011和00000101比较为00000111 所以转化为十进制是7


^按位异或的用法(相同为0不同为1,都为0的情况下为0)

例如1:3^8

3转化为二进制是0000 0011

8转化为二进制是0000 1000

00000011和00001000比较为00001011 所以转化为十进制是11

例如2:3^5

3转化为二进制是0000 0011

5转化为二进制是0000 0101

00000011和00000101比较为00000110 所以转化为十进制是6


~按位取反的用法   x = -(x+1)

例如:~9    x=-10


<<左移运算的用法        x<<n=x\times 2^n

例如1:3<<2

3转化为二进制是0000 0011

位移过后的二进制是0000 1100 转化为十进制是12


>>右移运算的用法      x<<n=x\div 2^n 不能整除时取整数

例如1:80<<4

80转化为二进制时01010000

位移后的二进制时00000101 转化为十进制是5

相关文章

  • 3、小众运算符の大课堂(一)

    较为简单の位运算符: & 位与运算| 位或运算^ 位异或运算~ 位取反运算 举例: 要做位运算,首先要把数据转...

  • 位运算及其应用

    内容概要: 位运算基本操作 基于位运算的状态压缩 位运算经典应用 位运算解N皇后问题 位运算 符号描述规则&与1&...

  • 位运算及用位运算实现权限控制

    请自行补习位运算相关知识 位运算 位运算示例 权限控制

  • 开发基础随笔之位运算符(Bitwise Operators)

    位运算符,属于算术运算符 按位逻辑运算符: 位移运算符: 位运算符的运算数只能是整数 位移运算符:按位左移 a<<...

  • 强大的位运算符

    位取反运算符 位取反运算符(~)是对所有位的数字进行取反操作位取反运算符.png 位与运算符 位与运算符(&)可以...

  • 位运算

    位运算 1. &:按位与 规律:一假则假任何位上的数和1相&得到的结果还是那个数 2. |:按位或 规律:一真则真...

  • 位运算

    https://leetcode.com/problems/gray-code/description/这个位运算...

  • 位运算

    位运算符比一般的算术运算符速度要快,而且可以实现一些算术运算符不能实现的功能。如果要开发高效率程序,位运算符是必不...

  • 位运算

    1.不用加减乘除做加法 解法:分为三步①各位相加不进位,即先按位异或;②做进位,按位与并左移位;③结果相加,直至没...

  • 位运算

    位运算不仅可以简化某些复杂的操作,而且具有更快的计算速度。典型的应用就是除法,交换两个数值,以及在一个数组中寻找只...

网友评论

      本文标题:位运算

      本文链接:https://www.haomeiwen.com/subject/aehfwhtx.html