Java中二進制數與整型之間的轉換


import java.io.*;

public class Test{
    /**
     * 二進制與整型之間的轉換
     * @param args
     * @throws IOException
     */
    public static void main(String args[])throws IOException{
    //整型轉二進制
        int a = -1;
        int b = 1;
        System.out.println(Integer.toBinaryString(a));
        System.out.println(Integer.toBinaryString(b));
        System.out.println(Integer.toBinaryString(a+b));
    //二進制轉int,二進制用0b開頭
        int bn = 0b11111111111111111111111111111111;
        System.out.println(bn);
    }
}

以上程序運行結果:

計算機中負數的運算原理,計算機中的運算是通過二進制的補碼形式進行的

計算 16-8=16+(-8)

假設這是一台八進制的機器,使用補碼進行運算,最高位第9位會溢出自動舍棄,所以就變成了00001000

補碼運算:
   00010000
+11111000
---------
100001000

小徐看世界,世界如此多嬌: http://www.cnblogs.com/schoolbag/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM