加法的實(shí)現(xiàn)

先回顧一下那些常見的邏輯操作:

1猜揪、AND(與)運(yùn)算:

只有輸入都為1時(shí)結(jié)果才為1

AND 0 1
0 0 0
1 0 1

電器符號(hào):

and.png

2趟薄、OR(或)運(yùn)算:

有一個(gè)輸入為1時(shí)結(jié)果就為1

OR 0 1
0 0 1
1 1 1

電器符號(hào):

OR.png

3启绰、NOR(或非)運(yùn)算:

對(duì)或操作結(jié)果取反

NOR 0 1
0 1 0
1 0 0

電器符號(hào):

nor.png

4荷并、NAND(與非):

對(duì)與操作結(jié)果取反

NOR 0 1
0 1 1
1 1 0

電器符號(hào):

NAND.png

利用這些非常簡(jiǎn)單的門電路我們就可以實(shí)現(xiàn)CPU中最關(guān)鍵單元加法器赏枚。

二绕娘、一位二進(jìn)制的加法

先來(lái)看一下只有一位的二進(jìn)制數(shù)的加法是如何實(shí)現(xiàn)脓规。一位的加法結(jié)果如下表所示:

+ 0 1
0 00 01
1 01 11

我們把結(jié)果分為個(gè)位和十位兩個(gè)部分來(lái)看一下。先單獨(dú)看一下十位的結(jié)果:

+ 0 1
0 0 0
1 0 1

這個(gè)看著這么眼熟险领,這個(gè)不就是與運(yùn)算嗎侨舆,十位的計(jì)算如此簡(jiǎn)單只需要一個(gè)與運(yùn)算:

add_1.png

搞定了十位我們?cè)賮?lái)看一下個(gè)位,先看一下個(gè)位的運(yùn)算結(jié)果:

+ 0 1
0 0 1
1 1 0

我們除去右下角看其他部分绢陌,和或運(yùn)算結(jié)果是完全一致的挨下。再單獨(dú)看一下右下角,輸入都為1時(shí)輸出為0這不就是與非的操作結(jié)果嗎脐湾。那我們將輸入同時(shí)給到或門和與非門看下他們的輸出:

add_xor_result.png

再看一下這個(gè)輸出臭笆,將或門和與非門的輸出看為輸入將我們想要的結(jié)果看為輸出,其正好符合與運(yùn)算秤掌,所以我們只要將輸出再合并到與門的輸入愁铺,就完成了個(gè)位的運(yùn)算:

xor_2.png

這個(gè)組合就是異或門,簡(jiǎn)寫XOR闻鉴,當(dāng)且僅當(dāng)兩個(gè)輸入不一致時(shí)輸出1茵乱。符號(hào)為:

xor.png

現(xiàn)在個(gè)位和十位(近位)的計(jì)算都實(shí)現(xiàn)了,我們把這兩個(gè)結(jié)合在一起就實(shí)現(xiàn)了一位的二進(jìn)制加法:


add.png

這組合稱為半加法器孟岛,但每次都畫這么多也不方便所以單獨(dú)設(shè)定一個(gè)符號(hào):

add_2.png
三瓶竭、帶進(jìn)位的加法:

對(duì)于兩位以上二進(jìn)制加法,例如11+11蚀苛,是需要將進(jìn)位也加上的在验,但半加器只能計(jì)算一位的加法,它的輸入也并沒(méi)有上一位的進(jìn)位堵未。所以要實(shí)現(xiàn)多位的加法需要先實(shí)現(xiàn)進(jìn)位相加腋舌。

先來(lái)看一下帶進(jìn)位的加和輸出是如何得到的,處理方式和我們平時(shí)計(jì)算是一樣的:

  1. 現(xiàn)在有輸入A渗蟹,B和進(jìn)位輸入C0
  2. 對(duì)輸入A和B計(jì)算得到加和輸出S1和近位輸出C1块饺。
  3. 將上面得到的加和S1和進(jìn)位輸入C0相加赞辩,就得到加和S2和近位輸出C2,那么S2就是加和輸出授艰。

和我們小學(xué)時(shí)學(xué)的計(jì)算一毛一樣

再來(lái)看一下進(jìn)位輸出如何計(jì)算的:
我們知道辨嗽,對(duì)于A、B和C0三個(gè)輸入最大就是三個(gè)都為1和為11的情況淮腾,所以最多也就產(chǎn)生一個(gè)為1的進(jìn)位糟需。那現(xiàn)在就很明了,這進(jìn)位要么在計(jì)算A加B是產(chǎn)生(A和B都是1)要么在加進(jìn)位是產(chǎn)生(A和B其中只有一個(gè)為1谷朝,進(jìn)位輸入為1)洲押,所以只要將兩次加和的進(jìn)位輸出做一次或運(yùn)算,就取得了進(jìn)位輸出圆凰。

最終電路圖如下

add.png

這組合稱為全加器杈帐,但個(gè)符號(hào)還是有點(diǎn)復(fù)雜了,所以有個(gè)特定符合:

add.png
四专钉、多位的加法

前面已經(jīng)實(shí)現(xiàn)了進(jìn)位相加挑童,那么多位加法就非常簡(jiǎn)單了。和我們平時(shí)計(jì)算一樣跃须,將上一位的進(jìn)位給到下一位站叼,第一位可看做進(jìn)位為0。多位加法實(shí)現(xiàn)也是如此回怜,將上一位的進(jìn)位輸出作為下一位的進(jìn)位輸入大年,第一位進(jìn)位輸入0。如下圖:

add.png

還是一樣的這個(gè)圖畫起來(lái)太復(fù)雜了玉雾,給個(gè)簡(jiǎn)單的:

add.png
五、超前進(jìn)位加法器:

上面實(shí)現(xiàn)的加法器轻要,運(yùn)算時(shí)除第一位外其他位運(yùn)算都依賴上一位的進(jìn)位輸出复旬,只有等上一位計(jì)算完成后給出進(jìn)位值,該位的計(jì)算才是正確的冲泥,所以這又被稱為波進(jìn)位加法器驹碍。
其實(shí)對(duì)于上一位的進(jìn)位輸出是可以根據(jù)輸入自己去計(jì)算得到的,即某一位An需要的進(jìn)位可以利用前面幾位A1凡恍、A2志秃、...、An-1計(jì)算得到不必等待嚼酝,雖然這樣使計(jì)算更多了但實(shí)際的速度確是提升的浮还。這樣加法的實(shí)現(xiàn)稱為超前進(jìn)位加法。

add.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末闽巩,一起剝皮案震驚了整個(gè)濱河市钧舌,隨后出現(xiàn)的幾起案子担汤,更是在濱河造成了極大的恐慌,老刑警劉巖洼冻,帶你破解...
    沈念sama閱讀 221,548評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件崭歧,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡撞牢,警方通過(guò)查閱死者的電腦和手機(jī)率碾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)屋彪,“玉大人所宰,你說(shuō)我怎么就攤上這事『嘲啵” “怎么了歧匈?”我有些...
    開封第一講書人閱讀 167,990評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)砰嘁。 經(jīng)常有香客問(wèn)我件炉,道長(zhǎng),這世上最難降的妖魔是什么矮湘? 我笑而不...
    開封第一講書人閱讀 59,618評(píng)論 1 296
  • 正文 為了忘掉前任斟冕,我火速辦了婚禮,結(jié)果婚禮上缅阳,老公的妹妹穿的比我還像新娘磕蛇。我一直安慰自己,他們只是感情好十办,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,618評(píng)論 6 397
  • 文/花漫 我一把揭開白布秀撇。 她就那樣靜靜地躺著,像睡著了一般向族。 火紅的嫁衣襯著肌膚如雪呵燕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,246評(píng)論 1 308
  • 那天件相,我揣著相機(jī)與錄音再扭,去河邊找鬼。 笑死夜矗,一個(gè)胖子當(dāng)著我的面吹牛泛范,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播紊撕,決...
    沈念sama閱讀 40,819評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼罢荡,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起柠傍,我...
    開封第一講書人閱讀 39,725評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤麸俘,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后惧笛,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體从媚,經(jīng)...
    沈念sama閱讀 46,268評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,356評(píng)論 3 340
  • 正文 我和宋清朗相戀三年患整,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了拜效。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,488評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡各谚,死狀恐怖紧憾,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情昌渤,我是刑警寧澤赴穗,帶...
    沈念sama閱讀 36,181評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站膀息,受9級(jí)特大地震影響般眉,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜潜支,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,862評(píng)論 3 333
  • 文/蒙蒙 一甸赃、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧冗酿,春花似錦埠对、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至弱判,卻和暖如春稍计,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背裕循。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留净刮,地道東北人剥哑。 一個(gè)月前我還...
    沈念sama閱讀 48,897評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像淹父,于是被迫代替她去往敵國(guó)和親株婴。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,500評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容