簡介
數字電路能完成的算術功能有加法、減法、乘法和除法等。這與模擬電路中的比例運算、求和運算以及模擬乘法器等是不一樣的概念。
1 加法
加法(Addition)功能是通過加法器
邏輯電路來完成的。一個二進制加法器能夠實現兩個二進制數(輸入端有A、B和進位輸入C-in)相加,並產生一個和(∑,二進制數代碼)及一個輸出進位(C-out),下面舉例說明了二進制加法器是如何實現3+9的加法運算的。顯而易見,和是12(∑為二進制碼1100),輸出進位C-out為0,但前提是假設輸人端進位C in為0。輸入端的C。只有在多級加法器串聯時才有實際意義。如果是BCD(用二進制表示的十進制數)碼加法器,和12中的個位2從∑輸出(BCD碼0010),十位1從輸出進位端C-out輸出。
加法運算2.減法
減法(Subtraction)也是由數字電路來完成的。一個減法器需要被減數、減數和借位輸入三個輸入。兩個輸出分別是差和借位輸出。例如,當8減去5時,輸入端的借位輸入為0,差是3且沒有借位輸出。借位輸入同樣也只有在多個減法器級連時才有意義。
3.乘法
乘法(Multiplication)是由被稱作乘法器的數字電路來完成的。在同一時間,數總是被2乘.因此需要兩個輸入。乘法器的輸出是積。乘法器的乘法運算主要是通過移位和加法電路來實現的。被乘數(二進制數)不斷地向左移位來實現連續乘2,變成積的一部分,再通過與某數相加來完成最終的積。
4.除法
除法(Division)是通過一系列相減、比較和移位來完成的,因此也可以用加法器和其它電路來實現。兩個輸入分別是被除數和除數,兩個輸出分別是商和餘數。
5.碼制轉換功能
碼制轉換功能(Code Conversion Function)一種碼制是指一串二進制位按照特定的格式來安排並用來表示指定的信息。一個碼制轉換器能夠把一種形式的代碼信息轉換成另外一種形式,例如把二進制轉換成BCD碼(Binary Coded Decimal)或格雷碼(Oray Code)。後面章節會詳細講到不同的碼制的編碼方
式、用途以及相關的碼制轉換器。
6.編碼功能
編碼功能(Encoding Function)由被稱為編碼器的邏輯電路來完成。編碼器能夠把信息轉換成代碼,如把一個十進制數或阿爾法字元轉變成某種碼制形式。例如,有種編碼器能夠把0~9這十個十進制數分別轉換成對應的二進制代碼。當編碼器輸入端輸入一個且唯一一個高電平時,輸出端就會有對應的一組二進制位編碼,這個編碼就意味著輸入端高電平有效時所示的含義。這種對應關係是由用戶來定義的,不過一般通用編碼器會有約定俗成的含義。
下圖是一個計算器鍵盤上的數字和字元被轉換成二進制代碼的編碼器說明圖。通過按壓每個鍵盤,分別產生對應的高電平輸入.從而在輸出編碼端產生對應的二進制代碼。
計算器鍵盤編碼器7.解碼功能
澤碼功能(Decoding Function)由被稱為解碼器的邏輯電路來完成。解碼器能夠把代碼轉換成對應的某種信息,如把一個二進制數轉換成非碼制形式,如十進制數。例如,有種解碼器能夠把四位二進制代碼轉換成對應的十進制數。下圖是一個驅動七段數碼管顯示的特定解碼器的功能說明圖,數碼管的每一段都連線到顯示解碼器的一根輸出線上。當一個給定的二進制編碼出現在解碼器的輸人端時,解碼器七個輸出端中對應的高電平被激活,驅動七段數碼管中相應的段點亮,從而顯示出相應於解碼器輸入端代碼值的數字。
七段數碼管顯示驅動解碼器8.數據選擇功能
在數據選擇功能(Data Selection Function)中,選擇數據的電路有數據選擇器(Multiplexer)和數據分配器(Demultiplexer)兩種。數據選擇器能夠從輸入端的多路數據中按序選中~路,並從輸出端分時輸出,這一功能是由電子轉換開關來實現的。而數據分配器和數據選擇器的功能正好相反,可直接把數據選擇器的輸入輸出端顛倒使用,適當接線即可。
當數據從甲地傳到比較遠的乙地時,甲地接數據選擇器.乙地接數據分配器,兩地之間只接一根線,分時傳送,節省了電線。比如有一個位元組的二進制數要傳送,按序分別把8個位輸出到數據選擇器的輸出端上,通過遠距離傳輸至數據分配器上;數據分配器接收到此輸入線上的電平值(0或1)後.再按序分配至其多個輸出端對應的一根線上,如下圖所示。計算機系統之間的數據傳輸通常就是利用這樣的傳輸方式。
遠距離數據傳輸示例9.存儲功能
數字系統優於模擬系統的最大特點就是它的存儲功能(Storage Function),即它可以在一定時問內把二進制數和位保存在存儲器中,這種存儲數據的單元是數字電路而不是磁介質。普通存儲器件包括鎖存器、觸發器、暫存器、半導體存儲器以及磁碟和光碟等,後兩種不屬於數字電路。
1)鎖存器和觸發器
鎖存器和觸發器很相似,都有一個輸出,多個輸入,能夠把輸入端想要設定的電平值保存在輸出端,並且在輸入電平改變時仍能保持輸出不變;只有在特定的輸入條件下輸出才改變(1變0或0變1)。它能記憶一個位,是時序邏輯電路(具有記憶的電路)的最基本單元。
2)暫存器
暫存器是由多個觸發器組成的,因此
暫存器能夠同時記憶多個位,如一個位元組的二進制數。只有當輸入條件改變時,輸出端的二進制數才改變。後面會學到移位暫存器、串/並行轉換暫存器等。暫存器儲存數據的時間是暫時性的,且容量有限,因此算不上是
存儲器。
10.計數功能
在數字系統中,計數功能(Counting Function)非常重要。數字計數器有很多種,它們的基本目的是記憶輸入端的數字脈衝個數,這個數字脈衝波代表一定的含義。每輸入一個脈衝,計數器都會把它的當前個數轉換成對應的編碼值來表示。所以計數器必須有記憶功能,能記住輸入脈衝的數量及當前脈衝的序號。除了最基本的記憶功能。其存儲能力也比較重要。計數器電路主要由觸發器構成。
下圖是一個五進制計數器的說明。計數器輸入端是一個周期為1秒的方波,輸出為三位二進制代碼,計數瞬間為方波的上升沿到來時。上電初始,沒有脈衝輸入時,輸出為000,當第一個脈衝的上升沿到來時,輸出OOl;依次類推,當第四個脈衝的上升沿到來時,輸出為100;當第五個脈衝的上升沿到來時,輸出為000,回到初始狀態。到下一個循環,第一個脈衝的上升沿到來時,重新輸出001,循環計數,自動清零。
計數器功能示意定義
算術功能是將累加器l和累加器2中的兩個數進行加、減、乘和除的基本運算,運算結果存放在累加器1中。狀態位CCO、CCI、0V和os提供運算結果信息和計算進度。