所有的整數類型(除了char 類型之外)都是有符號的整數
因為, java的byte是8bit(位),就是8個0/1 來表示。
但是第一位是符號位,表示正數還是負數。所以:
0000 0001表示1, (1×
20)
0000 0000表示0, (0×
20)
計算機中負數的二進制碼是是負數的絕對值取反,然后加1.
例如-1的二進制:
-1的絕對值是1(0000 0001);
取反是(1111 1110);
再加 1(0000 0001 );
結果是(1111 1111)
要對一個負數的二進制進行解碼,首先對其所有的位取反,然后加1。
例如-1的 二進制 (1111 1111)
取反: 0000 0000 是0
再加1:(0+1=1)
符號位是1,是負數,所以是-1
1000 0000 表示-128, (解碼過程:位取反是0111 1111==》127,然后加1==》128,符號位為1,是負數,表示-128)