Chinaunix

标题: java部分位操作 [打印本页]

作者: 中关村村草    时间: 2011-11-30 16:46
标题: java部分位操作
java部分位操作










最近要用java位操作运算故做了部分准备工作,由于工作过程中用到的操作不多,在此以作备忘:
位移操作:
   >>  右移操作,高位补0;每移一位相当于做一次除2操作
   <<  左移操作,低位补0;每移一位相当于做一次乘2操作
    &  按位与,一0则0;
    |  按位或,一1则1;
    取字节的末3位      & 7  
    取字节的第5、6位(从0开始由右至左计算)    >> 5 & 3
示例代码:

Java代码
  1. 1.public class Binary {   
  2. 2.      
  3. 3.    public static void main(String[] args) {   
  4. 4.        int ii = 205 ;   
  5. 5.        byte a = (byte) 0x6a ;   
  6. 6.        System.out.println( "byte a 的二进制数据:" +Integer.toBinaryString(a));   
  7. 7.        System.out.println("byte a 右移5位  a>>5:" + Integer.toBinaryString(a>>5));  //右移除2   
  8. 8.        System.out.println("byte a 左移1位  a<<1:" + Integer.toBinaryString(5<<1)); //左移乘2   
  9. 9.        System.out.println("ii的二进制数据为:" + Integer.toBinaryString(ii));   
  10. 10.        System.out.println("取ii的末3位(按位与 & 7):" + Integer.toBinaryString(ii&7));   
  11. 11.        System.out.println("取ii的第5、6位   ii>>5 & 3:" + Integer.toBinaryString(ii>>5 & 3));   
  12. 12.    }   
  13. 13.  
  14. 14.}  
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2