硬件型號:戴爾ins153501
系統(tǒng)版本:Windows10
補(bǔ)碼是用來解決負(fù)數(shù)在計(jì)算機(jī)中的表示問題的。正數(shù)的補(bǔ)碼就是其本身;負(fù)數(shù)的補(bǔ)碼是在其原碼的基礎(chǔ)上,符號位不變,其余各位取反,最后+1,即在反碼的基礎(chǔ)上+1。
在計(jì)算機(jī)系統(tǒng)中,數(shù)值一律用補(bǔ)碼來表示和存儲。原因在于,使用補(bǔ)碼,可以將符號位和數(shù)值域統(tǒng)一處理;同時(shí),加法和減法也可以統(tǒng)一處理。
例:1-1 = 1+(-1) = 00000001(原碼) + 100000001(原碼) =00000001(反碼) +11111110(反碼) = 11111111(反碼)=10000000(原碼) = -0
用反碼運(yùn)算時(shí),結(jié)果為-0,雖然+0和-0都是0,但是看起來總是覺得怪怪的,何況0帶符號沒有任何意義,并且出現(xiàn)了兩個(gè)能表示0的二進(jìn)制數(shù)00000000和10000000。
這讓嚴(yán)謹(jǐn)?shù)某绦騿T們?nèi)绾文芙邮?,為了消除歧義,于是出現(xiàn)了反碼。
計(jì)算機(jī)中的有符號數(shù)有三種表示方法,即原碼、反碼和補(bǔ)碼。三種表示方法均有符號位和數(shù)值位兩部分,符號位都是用0表示“正”,用1表示“負(fù)”,而數(shù)值位,三種表示方法各不相同 。
(圖片來源于互聯(lián)網(wǎng))