10000000表示-128的補碼,你可以理解為是一個特殊性。
各種8位二進制的表示法的數據范圍如下:
原碼: -127 ~ 127
手機操作請見諒 轉載處為https://zhidao.baidu.com/question/303175158130244284.html?fr=ala&word=-128%E7%9A%84%E8%A1%A5%E7%A0%81&device=mobile&ssid=0&from=1000969a&uid=0&pu=usm@2,sz@320_1004,ta@iphone_2_7.1__&bd_page_type=1&baiduid=C55F28E5DE5A1FA10DE2745C0AE87C74&tj=zhidao_1_0_10_l2
百度知道
反碼: -127 ~ 127
補碼: -128 ~ 127
補碼運算:正數為原碼本身,負數為原碼取反加一
127為正數,其補碼為原碼0111 1111
-127為負數,其補碼為原碼0111 1111,取反1000 0000,加一,1000 0001。
根據這情況來看,表示-0,不是的,-0的原碼是1000 0000補碼是0000 0000。+0的補碼也是0000 0000
於是就有了規定 1000 0000 定為 -128的補碼
這種定法和上面數學層面的表述是一致的。
這樣規定后,負數的補碼在機器中就好算了。
在約定的范圍內(-128-+127,對16位32位64位等擴大范圍)
先將該負數取絕對值,再用二進制表示出這個絕對值 (不管符號位)
對該二進制數進行取反加一操作就得到負數的補碼了
-128 絕對值是 128
128的二進制表示為:
1000 0000
取反
0111 1111
加1
1000 0000
這就是-128的補碼
這種辦法算出的結果符合“規定值”,規定而已。
