關(guān)于-128和+128的問題

這是-128的補(bǔ)碼表示。0沒有正負(fù)之分;如果不引進(jìn)補(bǔ)碼的概念,計(jì)算機(jī)計(jì)算的結(jié)果還真會出現(xiàn)+0、-0的問題,引進(jìn)了補(bǔ)碼的概念就沒有這個(gè)問題了。上面這個(gè)數(shù)就是-128,是一個(gè)字節(jié)能表示的最小的有符號數(shù)。它也符合求補(bǔ)碼的規(guī)則:符號位不變,數(shù)據(jù)位求反+1。也有一種觀點(diǎn)認(rèn)為-128這個(gè)數(shù)特別,沒有反碼與補(bǔ)碼。不管怎樣,計(jì)算機(jī)里好多東西都是規(guī)定,只要運(yùn)作起來順暢就是了。不然,下數(shù)的原碼、反碼、補(bǔ)碼都一樣你能理解嗎?取反了一樣,加一了還一樣,不可思議吧?這也是規(guī)定。有些邊緣問題先記住,慢慢理解。這個(gè)數(shù)是不是-128的補(bǔ)碼,可以加一個(gè)+128看是否為0來驗(yàn)證。位一個(gè)字節(jié)已不能表示有符號數(shù)+128了,那就要用兩個(gè)字節(jié),+128就是0000000010000000;-128也要擴(kuò)展為兩個(gè)字節(jié),擴(kuò)展原理是用符號位填滿擴(kuò)展字節(jié)(+128擴(kuò)展也是用符號位填滿擴(kuò)展字節(jié),它的符號位是0),就是1111111110000000。0000000010000000+1111111110000000=0。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容