補(bǔ)碼減法,補(bǔ)碼減法原理是什么?
補(bǔ)碼減法,補(bǔ)碼減法原理是什么?
負(fù)數(shù)的減法運(yùn)算也要設(shè)法化為加法來做,其所以使用這種方法而不使用直接減法,是因?yàn)樗梢院统R?guī)的加法運(yùn)算使用同一加法器電路,從而簡化了計算機(jī)的設(shè)計。
數(shù)用補(bǔ)碼表示時,減法運(yùn)算的公式為
??[x-y]補(bǔ)=[x]補(bǔ)-[y]補(bǔ)=[x]補(bǔ)+[-y]補(bǔ)
(2.18)
只要證明[-y]補(bǔ)=-[y]補(bǔ),上式即得證。現(xiàn)證明如下:
∵ [x+y]補(bǔ)=[x]補(bǔ)+[y]補(bǔ) (mod 2)
∴ [y]補(bǔ) =[x+y]補(bǔ)-[x]補(bǔ) (2.19a)
∵ [x-y]補(bǔ)=[x+(-y)]補(bǔ)=[x]補(bǔ)+[-y]補(bǔ)
∴ [-y]補(bǔ) =[x-y]補(bǔ)-[x]補(bǔ) (2.19b)
將式(2.19a)與(2.19b)相加,得
[-y]補(bǔ)+[y]補(bǔ)=[x+y]補(bǔ)+[x-y]補(bǔ)-[x]補(bǔ)-[x]補(bǔ)
=[x+y+x-y]補(bǔ)-[x]補(bǔ)-[x]補(bǔ)
=[x+x]補(bǔ)-[x]補(bǔ)-[x]補(bǔ)=0
故 [-y]補(bǔ)=-[y]補(bǔ)??? (mod 2)?????????????????? (2.20)
從[y]補(bǔ)求[-y]補(bǔ)的法則是:對[y]補(bǔ)包括符號位“求反且最末位加1”,即可得到[-y]補(bǔ)。寫成運(yùn)算表達(dá)式,則為
[-y]補(bǔ)=-[y]補(bǔ)+2-n?????????????????????????? (2.21)
其中符號﹁表示對[y]補(bǔ)作包括符號位在內(nèi)的求反操作,2-n表示最末位的1。
?[例10] 已知x1=-0.1110,x2=+0.1101,求:[x1]補(bǔ),[-x1]補(bǔ),[x2]補(bǔ),[-x2]補(bǔ)。
[解:]
[x1]補(bǔ)=1.0010
[-x1]補(bǔ)=-[x1]補(bǔ)+2-4=0.1101+0.0001=0.1110
[x2]補(bǔ)=0.1101
[-x2]補(bǔ)=-[x2]補(bǔ)+2-4=1.0010+0.0001=1.0011
[例11] x=+0.1101,y=+0.0110,求x-y。
[解:]
[x]補(bǔ)=0.1101
[y]補(bǔ)=0.0110, [-y]補(bǔ)=1.1010
[x]補(bǔ) ? 0.1101
+[-y]補(bǔ) 1.1010
-----------------------
[x-y]補(bǔ) 10.0111
所以??? x-y=+0.0111
非常好我支持^.^
(20) 100%
不好我反對
(0) 0%
相關(guān)閱讀:
( 發(fā)表人:admin )