在計算機實現原理專題--二進制減法器(一)中說明了基本原理,現準備說明如何來實現。.net
首先第一步255-b運算至關於對b進行按位取反,所以可將8個非門組成以下圖的形式:設計
因爲每次作減法時,咱們能夠人爲的判斷被減數和減數的大小,因此當被減數大於減數時中間結果必定會上溢也就是多出1位,所以中間結果最多會有9位,而最終只要去掉最高位剩下的8位就是最後結果(這裏雖然是減法運算,可是實際上並無減法,所以在使用前面所說的加法器運算時能夠直接忽略最後的進位)。blog
當被減數小於減數時中間結果會出現負數,最後須要顛倒兩數進行相減(其實是對原值進行取反,而後經過比較器可知結果爲負)。get
可是若是想讓計算器來判斷被減數和減數的大小,又改如何設計呢?其實到目前爲止咱們已經實現兩位數的加法器和減法器了,只不過在實現減法的時候還須要人工判斷一下兩數的大小。原理