位运算

作者: 洛梓煕 | 来源:发表于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

    相关文章

      网友评论

          本文标题:位运算

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