byte范圍及8種常見數據類型


byte范圍:-128  到 127 原因 :

在計算機內,定點數有3種表示法:原碼、反碼和補碼

原碼 :二進制定點表示法,即最高位為符號位,“0”表示正,“1”表示負,其余位表示數值的大小。
反碼 :正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。
補碼 :正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1。

Java中用補碼表示二進制數,補碼的最高位是符號位,最高位為“0”表示正數,最高位為“1”表示負數。

正數補碼為其本身;
負數補碼為其絕對值各位取反加1;

 

例如:
+21,其二進制表示形式是00010101,則其補碼同樣為00010101
-21,按照概念其絕對值為00010101,各位取反為11101010,再加1為11101011,即-21的二進制表示形式為11101011

步驟:
1、byte為一字節8位,最高位是符號位,即最大值是01111111,因正數的補碼是其本身,即此正數為01111111
十進制表示形式為127 
2、最大正數是01111111,那么最小負是10000000(最大的負數是11111111,即-1)
3、10000000是最小負數的補碼表示形式,我們把補碼計算步驟倒過來就即可。10000000減1得01111111然后取反10000000
因為負數的補碼是其絕對值取反,即10000000為最小負數的絕對值,而10000000的十進制表示是128,所以最小負數是-128
4、由此可以得出byte的取值范圍是-128到+127


免責聲明!

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



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