一:數(shù)的表示形式
在生活中表示數(shù)的時(shí)候一般都是把正數(shù)前面加一個(gè)“+”,負(fù)數(shù)前面加一個(gè)“-”,但是在數(shù)字設(shè)備中,機(jī)器是不認(rèn)識(shí)這些的,我們就把“+”用“0”表示,“-”用“1”表示。原碼、反碼和補(bǔ)碼。這三種形式是怎樣表示的呢?如下所示:
例1:求+12和-12八位原碼、反碼、補(bǔ)碼形式
真值
原碼
反碼
補(bǔ)碼
它們的原碼分別為[+12]=00001100[-12]=100011
它們的反碼分別為[+12]*=00001100
[-12]*=(28-1)+(-1100)=11110011
它們的補(bǔ)碼分別為[+12]**=00001100
[-12]**=28+(-1100)=11110100
正數(shù)
+X
0X
0X
0X
負(fù)數(shù)
-X
1X
(2n-1)+X
2n+X
二:原碼、反碼及補(bǔ)碼的算術(shù)運(yùn)算
因?yàn)檫@三種數(shù)碼表示法的形成規(guī)則不同,所以算術(shù)運(yùn)算方法也不相同。
原碼:與我們的日常中算術(shù)運(yùn)算相同。
反碼:先轉(zhuǎn)換為反碼形式,再進(jìn)行加減運(yùn)算。它的減法可以按A反+[-B]反的形式進(jìn)行.
補(bǔ)碼:先轉(zhuǎn)換為補(bǔ)碼形式,再進(jìn)行加減運(yùn)算,其減法可以按A補(bǔ)+[-B]補(bǔ)進(jìn)行.
三:溢出及補(bǔ)碼運(yùn)算中溢出的判斷
溢出可以描述為運(yùn)算結(jié)果大于數(shù)字設(shè)備的表示范圍。這種現(xiàn)象應(yīng)當(dāng)作故障處理。
判斷溢出是根據(jù)最高位的進(jìn)位來(lái)判斷的。