文章出處

  一個字節包含8位, 第一位是符號位, 8位就可以是代碼27次方, 所以范圍為-2^7 ~ 2^7 - 1, 即-128到+127;

  一個字節包含8位,八位轉化為二進制位11111111,此時的值為FF,或者00000000,值為00; 其中十進制的0-127也就是十六進制的00-7E,代表了ascll的英文碼表,就是說英文只要一個字節就能夠表示清楚....

  各種數據類型:

    byte類型就是1個字節,能夠代表的范圍為-2^7 ~ 2^7 - 1;

    short類型為2個字節,能夠代表的范圍為-2^16 ~ 2^16 - 1;

    int類型為4個字節,能夠代表的范圍為-2^31 ~ 2^31 - 1;

    long類型為8個字節,能夠代表的范圍為-2^64 ~ 2^64 - 1;

    flaot的類型也為4字節, 但是它的范圍比int大得多(來自百度知道:位符號位+8位指數(q)+23位底數(b),其解釋出來的形式是:b^q,由于指數q是8位有符號整數,范圍是-128 ~ 127,23位的底數(無符號)最大值就是2 ^ 23,算上指數的話,最大可以表達到2 ^ 23 ^ 127,但是由于計算機的運算能力限制,并不能處理到如此大的數,但是其取值范圍也會比32位整數大很多。 由于float類型是一個冪計算式,所以很多時候并不能表達一個精確值,例如0.1,如果使用float在內存中會被表示為0.10000000000000001,如果進行反復計算將會導致非常大的誤);

    double類型也為8個字節;

  移位運算, 有符號左移"<<":

public class Test {
    public static void main(String args[]) {
        System.out.println( 10<<1 ); //相當于: 10*2
        System.out.println( 10<<2 ); //相當于:10*2^2
        System.out.println( 10<<3 ); //相當于:10*2^3
        System.out.println( 10<<4 ); //相當于:10*2^4
    }
}

//輸出:

  20
  40
  80
  160

  

作者: NONO
出處:http://www.cnblogs.com/diligenceday/

  有符號右移動">>":

public class Test {
    public static void main(String args[]) {
        int num = 160;
        System.out.println( num>>1 );
        System.out.println( num>>2 );
        System.out.println( num>>3 );
        System.out.println( num>>4 );
    }
}
//輸出: 80 40 20 10

   >>>:無符號右移,忽略符號位,空位都以0補齊;

   無符號右移有個特性必須記住,因為在二進制中:負數的值正數的取反+1 ,當我們對一個負數進行無符號右移, 那么無符號右移的值將會非常大:

public class Test {
    public static void main(String args[]) {
        int num = -1;
        System.out.println( num>>>1 );
    }
}
//輸出:2147483647

 

  ~:按位取反;

  &:按位且;

  |:按位或;

  ^:按位異或;

  但是這些玩意兒有什么用呢, 參考如下的js代碼, 原文鏈接

(!(~+[])+{})[--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~+[]]

  會輸出:"sb"

 

  或者這樣裝逼...

((""[~+[]]++)+"")[(+[])]+(!+[]+{})[(~((~+[]+~+[])<<(-(~+[]))))]

  會輸出:"Ne"

 

  進制之間的轉化參考, 進制參考

  10進制到2進制:

  

      

  2進制到10進制:

      

 

  

作者: NONO
出處:http://www.cnblogs.com/diligenceday/


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()