[Go] 理解計算機負數的表示以及整數范圍


計算機在表示數的時候 , 是二進制 , 如果是4位

對於正整數, 很簡單就是 , 所有的位都是1表示最大的正整數15

 

但是對於負數 , 需要最高位用來表示正負符號 , 1是負數 , 0 是正數

所以4位的有符號整數最大是7

8位的是整數最大是 127  最小是-128

 

原始的二進制是原碼 , 除了符號位外所有的位反轉, 就是反碼 , 再加1就是補碼

負數的表示是用的補碼表示

 

對於人類閱讀比較難懂 , 但是對於計算機來說 , 這樣的表示很方便用來進行加法運算等

 

對於8位的整數 ,

那正常也是-127到+127 , 為什么是-128是最小的呢

因為0這個特殊的存在 , 0 沒有 -0  和+0區分

所以把-0表示為了-128

 

 

如果給int8數賦值 128, 就會報錯

 


免責聲明!

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



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