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

  • 相关阅读:
    B1001 害死人不偿命的(3n+1)猜想 (15 分)
    A1050 String Subtraction (20 分)
    A1041 Be Unique (20 分)
    B1047 编程团体赛 (20 分)
    B1043 输出PATest (20 分)
    B1042 字符统计 (20 分)
    B1038 统计同成绩学生 (20 分)
    VB计算符号
    vs2008写代码的时候不能输入中文,sogou和google输入法都没有用
    如何彻底关闭Windows7自动更新
  • 原文地址:https://www.cnblogs.com/one-lightyear/p/7657831.html
Copyright © 2011-2022 走看看