半加器和全加器的功能特點(diǎn)
1.半加器的邏輯表達(dá)式
半加器是指只能完成兩個二進(jìn)制位相加但不包括進(jìn)位的電路。它可以使用布爾代數(shù)來表示,其中A和B是需要相加的兩個輸入位,S是不包括進(jìn)位時的和,C是需要進(jìn)位時的結(jié)果:S = A ⊕ B (異或) C = A ∧ B (與)
2.半加器和全加器的功能特點(diǎn)
半加器雖然可以完成兩個二進(jìn)制位相加,但是它無法處理進(jìn)位問題,因此不能用于加上多位數(shù)。為了解決這個問題,我們引入全加器。
全加器是一種可以將三個二進(jìn)制數(shù)(兩個待加數(shù)和一個進(jìn)位)相加得到一個和以及向下一位的進(jìn)位值的電路。
全加器可以被看作是由兩個半加器和一個額外的進(jìn)位輸入組成的,其邏輯表達(dá)式如下:
S = A ⊕ B ⊕ Cin Cout = (A ∧ B) ∨ (Cin ∧ (A ⊕ B))
其中,S表示不考慮進(jìn)位時的和,Cout表示需要向下一位的進(jìn)位值。全加器不僅可以單獨(dú)使用,還可以通過級聯(lián)來實(shí)現(xiàn)加上多位數(shù)的運(yùn)算。
半加器+半加法和全加法是算術(shù)運(yùn)算電路中的基本單元,它們是完成1位二進(jìn)制相加的一種組合邏輯電路。
一位加法器的真值表見表1.1;由表中可以看見,這種加法沒有考慮低位來的進(jìn)位,所以稱為半加。半加器就是實(shí)現(xiàn)表1.1中邏輯關(guān)系的電路。被加數(shù)A加數(shù)B和數(shù)S進(jìn)位C0000011010101101
全加器
全加器能進(jìn)行加數(shù)、被加數(shù)和低位來的進(jìn)位信號相加,并根據(jù)求和結(jié)果給出該位的進(jìn)位信號。根據(jù)它的功能,可以列出它的真值表。
半加器和全加器的區(qū)別
1、半加器
在數(shù)學(xué)系統(tǒng)中,二進(jìn)制加法器是它的基本部件之一。
半加器(半加就是只求本位的和,暫不管低位送來的進(jìn)位數(shù))的邏輯狀態(tài)表
半加器和全加器的原理及區(qū)別(結(jié)構(gòu)和功能)
其中,A和B是相加的兩個數(shù),S是半加和數(shù),C是進(jìn)位數(shù)。
2、全加器
當(dāng)多位數(shù)相加時,半加器可用于最低位求和,并給出進(jìn)位數(shù)。第二位的相加有兩個待加數(shù)和,還有一個來自前面低位送來的進(jìn)位數(shù)。這三個數(shù)相加,得出本位和數(shù)(全加和數(shù))和進(jìn)位數(shù)。
本文主要介紹半加器和全加器,通過邏輯電路和其真值表了解它們的原理,以了解單片機(jī)、CPU是怎么工作的。在進(jìn)入這個主題之前,要先了解布爾邏輯和邏輯門,這對本文的閱讀,或者閱讀其他數(shù)字電路資料非常重要。
什么是加法器?
加法器是一種計算器,用于將兩個二進(jìn)制數(shù)相加。這個計算器不是指帶有按鈕的計算器,這是一種可以與許多其他電路集成以實(shí)現(xiàn)廣泛應(yīng)用的電路。有兩種加法器:
1. 半加器
2. 全加器
半加器
在半加器和其它邏輯門的幫助下,我們可以設(shè)計能夠執(zhí)行簡單加法的電路。
讓我們先來看看一位二進(jìn)制的加法。
0+0 = 0
0+1 = 1
1+0 = 1
1+1 = 10
一位二進(jìn)制加法器是最小單元,上面的算式可以看到1+1=10,有2位輸出。
因此,上述加法算式可以寫成
0+0 = 00
0+1 = 01
1+0 = 01
1+1 = 10
這里'10'的輸出'1'為進(jìn)位。結(jié)果顯示在下面的真值表中。
先看看實(shí)現(xiàn)半加器的邏輯圖。
從真值表和邏輯圖中可以清楚地看出,這個 1 位加法器用異或門和進(jìn)位的與門實(shí)現(xiàn),輸出“Sum”。
對于復(fù)雜的加法,可能存在多位數(shù)相加的情況。這需要更合適的加法器來幫助——全加器。
全加器
兩個半加器電路可以實(shí)現(xiàn)一個全加器。第一個半加法器將用于將 A 和 B 相加以產(chǎn)生部分和。后一個半加法器用于將 CIN 與前一個半加法器產(chǎn)生的和相加,以獲得最終的 S 輸出。任何半加器邏輯產(chǎn)生進(jìn)位,就會有一個輸出進(jìn)位。因此,COUT 將是半加器進(jìn)位輸出??纯聪旅嫒悠鬟壿嬰娐返膶?shí)現(xiàn)。
這種類型的加法器比半加法器的實(shí)現(xiàn)稍微復(fù)雜。半加器和全加器的主要區(qū)別在于全加器具有三個輸入和兩個輸出。前兩個輸入是加數(shù)“A”和 “B”,第三個輸入是前面一步的運(yùn)算進(jìn)位CIN,如1+1=10,結(jié)果“10”中的“1”就是CIN,用于下一次相加運(yùn)算的輸入。
從上面的真值表和全加器邏輯圖,我們可以看到,輸出S是輸入 A 與 B 的半加器運(yùn)算結(jié)果和進(jìn)位CIN的異或運(yùn)算。我們還必須注意,只有當(dāng)“A”,“B”“CIN”輸入中的任意兩個輸入為高電平時,COUT 才會為真。
把全加器復(fù)雜的邏輯圖抽象出來,用以下圖來表示:
使用這種抽象類型的符號,我們把多個全加器組合,從前一個單元全加器輸出一個進(jìn)位,并將這個進(jìn)位發(fā)送到下一個全加器,可以組成多位加法器。
在計算機(jī)中,對于多位運(yùn)算,每個位由一個全加器表示。因此,要把4位二進(jìn)制數(shù)相加,可以通過兩個由4個全加器組合形成的多位加法器來完成。