文本閱讀:
12數(shù)字音頻技術(shù)(第6版)
如同前面提到的一樣,在二進制形式中可以用一個符號位表示負數(shù)。這樣做雖然對人來說很方便,但對機器來
是不合理的。這樣做就需要為加法和減法配備各自獨立的電路。相反,如果使用取模計數(shù)系統(tǒng)中的一個特殊性質(zhì),則可以用加法運算實現(xiàn)減法,雖然仍舊需要進位操作,但不需要借位操作了。具體地,現(xiàn)在不是把負數(shù)存儲為一個符號和絕對值,而是將其編碼成基數(shù)的補數(shù)形式。對于任意數(shù)制來說都存在兩種類型的補數(shù)在"基數(shù)減-一"數(shù)制中,"基數(shù)減一"補數(shù)是在這個數(shù)的每用該數(shù)制的"基數(shù)減
所得數(shù)字減去該位上的原數(shù)字得到的。對于十進制來說,這被稱為9的補數(shù),而對于二進制來說,則為1的補數(shù)。真正的補數(shù)是用"基數(shù)減分
別減去每位數(shù)字,然后在最低比
特上加1得到的。真正的補數(shù)在十進制中稱為10的補數(shù),在二進制中稱為2的補數(shù)。通過基數(shù)的補數(shù),在現(xiàn)有的數(shù)字上加上一個數(shù)將得到基數(shù)的下一個整數(shù)冪。例如,35的10的補數(shù)為65,因為35+65+102=100;1011的2的補數(shù)為0101,因為1011+0101=24=1000。由此出發(fā),注意到補數(shù)是符號補數(shù)加1,因此符號補數(shù)可由數(shù)制中最大的符號減去原始數(shù)字而得到
在二進制中構(gòu)成1的補數(shù)和2的補數(shù)是很容易的,并能極大地加快執(zhí)行進程。由于基數(shù)為2,因此每位二進制數(shù)字被1減。所以,要想得到1的補數(shù),只需把所有的1用0替代、把所有的0用1替代,即令逐位取反。2的補數(shù)只要在逐位取反后再加1,并且要遵守所有位操作。例如,對于數(shù)0100,它的1的補數(shù)為1011,2的補數(shù)為100。這個由1的補數(shù)得到的2的補數(shù)是用處最廣的。例如,表1.3所示為從+7到-7的各個數(shù)字的表示方法,其中負數(shù)用2的補數(shù)表示。正的2的補數(shù)與其負值相加總等于零十進制數(shù)
二進制數(shù)
1001
表1.3:用2的補數(shù)表示正數(shù)和負數(shù)。
數(shù)字音頻技術(shù)(第6版) 39
分類:相關(guān)閱讀 / 「數(shù)字音頻技術(shù)(第6版)」
前一篇:數(shù)字音頻技術(shù)(第6版) 38 下一篇:數(shù)字音頻技術(shù)(第6版) 40
下載工具
意見反饋
捐助平臺