計算機中的符號數有三種表示方法,即原碼、反碼和補碼。三種表示方法均有符號位和數值位兩部分,符號位都是用1表示“負”,用0表示“正”,而數值位,三種表示方法各不相同。
原碼(true form)是一種計算機中對數字的二進制定點表示方法。原碼表示法在數值前面增加了一位符號位(即最高位為符號位):正數該位為0,負數該位為1。例如:原碼10010= 反碼11101 (10010,1為符號碼,故為負)。
反碼表示法規定:正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。
在計算機系統中,數值一律用補碼來表示和存儲。補碼表示法規定:正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1。
一種最簡單的計算負數補碼的方式:符號位保持1不變,數值位從右邊數第一個1及其右邊的0保持不變,左邊按位取反。