加法器是產生數的和的裝置。加數和被加數為輸入,和數與進位為輸出的裝置為半加器。若加數、被加數與低位的進位數為輸入,而和數與進位為輸出則為全加器。常用作計算機算術邏輯部件,執行邏輯操作、移位與指令調用。在電子學中,加法器是一種數位電路,其可進行數字的加法計算。在現代的電腦中,加法器存在于算術邏輯單元(ALU)之中。 加法器可以用來表示各種數值,如:BCD、加三碼,主要的加法器是以二進制作運算。由于負數可用二的補數來表示,所以加減器也就不那么必要。
加法器電路原理
在計數體制中,通常用的是十進制,它有0,1,2,3,…,9十個數碼,用它們來組成一個數。但在數字電路中,為了把電路的兩個狀態(1態和0態)和數碼對應起來,采用二進制較為方便,二進制只有0和1兩個數碼。
十進制是以10為底數的計數體制,例如
二進制是以2為底數的計數體制,例如
二進制數11011相當于十進制數27。
二進制加法器是數字電路的基本部件之一。二進制加法運算同邏輯加法運算的含義是不同的。前者是數的運算,而后者表示邏輯關系。二進制加法是“逢二進一”,即1+1=10,而邏輯加則為1+1=1。
1、半加器
所謂“半加”,就是只求本位的和,暫不管低位送來的進位數。半加器的邏輯狀態表見表1。
其中,A和B是相加的兩個數,S是半加和數,C是進位數。
由邏輯狀態表可寫出邏輯式:
并由此畫出圖1(a)的邏輯圖。圖1(b)是半加器的邏輯符號。
圖1半加器邏輯圖及其邏輯符號
2、全加器
當多位數相加時,半加器可用于最低位求和,并給出進位數。第二位的相加有兩個待加數,還有一個來自低位送來的進位數。這三個數相加,得出本位和數(全加和數)和進位數,這就是“全加”,表2是全加器的邏輯狀態表
全加器可用兩個半加器和一個或門組成,如圖2(a)所示。在第一個半加器中相加,得出的結果再和在第二個半加器中相加,即得出全加和。兩個半加器的進位數通過或門輸出作為本位的進位數。圖2(b)是全加器的邏輯符號。
圖2 全加器邏輯圖及其邏輯符號
例1、用4個全加器組成一個邏輯電路以實現兩個4位的二進制數A—1101(十進制為13)和B—1011(十進制為11)的加法運算。
解:
邏輯電路如圖3所示,和數是S—11000(十進制數為24)。根據全加器的邏輯狀態表自行分析。
這種全加器的任意一位的加法運算,都必須等到低位加法完成送來進位時才能進行。這種進位方式稱為串行進位,它的缺點是運算速度慢,但其電路比較簡單,因此在對運算速度要求不高的設備中,仍不失為一種可取的全加器。T692集成加法器就是這種串行加法器。
圖3 例1的邏輯圖
二進制加法器原理
被加數和加數的各位能同時并行到達各位的輸入端,而各位全加器的進位輸入則是按照由低位向高位逐級串行傳遞的,各進位形成一個進位鏈。由于每一位相加的和都與本位進位輸入有關,所以,最高位必須等到各低位全部相加完成并送來進位信號之后才能產生運算結果。顯然,這種加法器運算速度較慢,而且位數越多,速度就越低。? 為了提高加法器的運算速度,必須設法減小或去除由于進位信號逐級傳送所花的時間,使各位的進位直接由加數和被加數來決定,而不需依賴低位進位。根據這一思想設計的加法器稱為超前進位(又稱先行進位)二進制并行加法器。對于1位的二進制加法,相關的有五個的量:1、被加數A,2、被加數B,3、前一位的進位CIN,4、此位二數相加的和S,5、此位二數相加產生的進位COUT。前三個量為輸入量,后兩個量為輸出量,五個量均為1位。對于32位的二進制加法,相關的也有五個量:1、被加數A(32位),2、被加數B(32位),3、前一位的進位CIN(1位),4、此位二數相加的和S(32位),5、此位二數相加產生的進位COUT(1位)。要實現32位的二進制加法,一種自然的想法就是將1位的二進制加法重復32次(即逐位進位加法器)。這樣做無疑是可行且易行的,但由于每一位的CIN都是由前一位的COUT提供的,所以第2位必須在第1位計算出結果后,才能開始計算;第3位必須在第2位計算出結果后,才能開始計算,等等。而最后的第32位必須在前31位全部計算出結果后,才能開始計算。
利用74LS138和與非門設計兩個二進制全加器
設A為加數B為被加數 低位進位為Ci-1 和為S 進位為Ci
A B Ci-1 S Ci
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 1 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
___________
— — — —
S=Y1.Y2.Y4.Y7
___________
— — — —
Ci=Y3.Y5.Y6.Y7
評論
查看更多