zoukankan      html  css  js  c++  java
  • 位运算

    首先介绍一下基本的位操作:位操作的是整数基本数据类型中的单个比特,即操作的是 二进制

     ================================= =================================

     按位操作符:

    &    按位与操作 

    |     按位或操作

    ^    按位异或操作

    ~   按位非操作

     ================================= =================================

    &  ====    如果输出位都是 1 ,那么输出 1 

    例: 5  &  3  = 1 

      101

    &011   << ==== >> 001 = 1

     ================================= =================================

    |  ====    如果输出位有一个是 1 ,那么输出 1 

    例: 5 | 3  = 7 

      101

    011   << ==== >> 111 = 7

     ================================= =================================

    ^  ====    如果输出位有一个是 1,但不全是 1 ,那么输出 1 

    例: 5 ^ 3  = 6 

      101

    ^011   << ==== >> 110 = 6

     ================================= =================================

    ~  ====  按位取反

    例:5 的2进制表示是 : 00000000 00000000 00000000 00000101

    ==> ~5 = 11111111 11111111 11111111 11111010 = -(1073741824 - 5)

     ================================= =================================

    移位操作运算:是对int基本类型的二进制的移位运算

    移位操作符:  <<  ,>> ,>>>

    >> :右移,若符号位为正,高位补0,反之相反      比如  10 >> 2  <==>  1010 >> 2  <==> 0010  <==> 2

    << :左移,向左移动                   比如  10 << 2  <==>  1010 << 2  <==> 101000 <==> 40

    >>>:右移,无乱正负,最高位都插入0

  • 相关阅读:
    C语言II—作业03
    C语言II博客作业01
    学期总结
    第一次作业!
    C语言I博客作业08
    C语言I博客作业07
    C语言I博客作业06
    C语言I博客作业05
    C语言I博客作业04
    第三次作业!
  • 原文地址:https://www.cnblogs.com/one-lightyear/p/7657831.html
Copyright © 2011-2022 走看看