
- 數位電子教程
- 數位電子 - 首頁
- 數位電子基礎
- 數字系統的型別
- 訊號的型別
- 邏輯電平和脈衝波形
- 數字系統元件
- 數字邏輯運算
- 數字系統優勢
- 數制
- 數制
- 二進位制數表示
- 二進位制運算
- 帶符號二進位制運算
- 八進位制運算
- 十六進位制運算
- 補碼運算
- 進位制轉換
- 進位制轉換
- 二進位制到十進位制轉換
- 十進位制到二進位制轉換
- 二進位制到八進位制轉換
- 八進位制到二進位制轉換
- 八進位制到十進位制轉換
- 十進位制到八進位制轉換
- 十六進位制到二進位制轉換
- 二進位制到十六進位制轉換
- 十六進位制到十進位制轉換
- 十進位制到十六進位制轉換
- 八進位制到十六進位制轉換
- 十六進位制到八進位制轉換
- 二進位制程式碼
- 二進位制程式碼
- 8421 BCD碼
- 餘3碼
- 格雷碼
- ASCII碼
- EBCDIC碼
- 程式碼轉換
- 錯誤檢測與糾錯碼
- 邏輯閘
- 邏輯閘
- 與門
- 或門
- 非門
- 通用門
- 異或門
- 異或非門
- CMOS邏輯閘
- 使用二極體電阻邏輯的或門
- 與門與或門
- 兩級邏輯實現
- 閾值邏輯
- 布林代數
- 布林代數
- 布林代數定律
- 布林函式
- 德摩根定理
- SOP和POS形式
- POS到標準POS形式
- 最小化技術
- 卡諾圖最小化
- 三變數卡諾圖
- 四變數卡諾圖
- 五變數卡諾圖
- 六變數卡諾圖
- 無關項條件
- 奎因-麥克拉斯基方法
- 最小項和最大項
- 規範形式和標準形式
- 最大項表示
- 使用布林代數進行簡化
- 組合邏輯電路
- 數字組合電路
- 數字算術電路
- 多路複用器
- 多路複用器設計過程
- 多路複用器通用門
- 使用4:1多路複用器的2變數函式
- 使用8:1多路複用器的3變數函式
- 多路分解器
- 多路複用器與多路分解器
- 奇偶校驗位生成器和校驗器
- 比較器
- 編碼器
- 鍵盤編碼器
- 優先編碼器
- 解碼器
- 算術邏輯單元
- 7段LED顯示器
- 程式碼轉換器
- 程式碼轉換器
- 二進位制到十進位制轉換器
- 十進位制到BCD轉換器
- BCD到十進位制轉換器
- 二進位制到格雷碼轉換器
- 格雷碼到二進位制轉換器
- BCD到餘3碼轉換器
- 餘3碼到BCD轉換器
- 加法器
- 半加器
- 全加器
- 序列加法器
- 並行加法器
- 使用半加器的全加器
- 半加器與全加器
- 使用與非門的全加器
- 使用與非門的半加器
- 二進位制加法器-減法器
- 減法器
- 半減器
- 全減器
- 並行減法器
- 使用2個半減器的全減器
- 使用與非門的半減器
- 時序邏輯電路
- 數字時序電路
- 時鐘訊號和觸發
- 鎖存器
- 移位暫存器
- 移位暫存器應用
- 二進位制暫存器
- 雙向移位暫存器
- 計數器
- 二進位制計數器
- 非二進位制計數器
- 同步計數器設計
- 同步計數器與非同步計數器
- 有限狀態機
- 演算法狀態機
- 觸發器
- 觸發器
- 觸發器轉換
- D觸發器
- JK觸發器
- T觸發器
- SR觸發器
- 帶時鐘的SR觸發器
- 無時鐘的SR觸發器
- 帶時鐘的JK觸發器
- JK到T觸發器
- SR到JK觸發器
- 觸發方法:觸發器
- 邊沿觸發觸發器
- 主從JK觸發器
- 競爭冒險現象
- A/D和D/A轉換器
- 模數轉換器
- 數模轉換器
- DAC和ADC積體電路
- 邏輯閘的實現
- 用與非門實現非門
- 用與非門實現或門
- 用與非門實現與門
- 用與非門實現或非門
- 用與非門實現異或門
- 用與非門實現異或非門
- 用或非門實現非門
- 用或非門實現或門
- 用或非門實現與門
- 用或非門實現與非門
- 用或非門實現異或門
- 用或非門實現異或非門
- 使用CMOS的與非/或非門
- 使用與非門的全減器
- 使用2:1多路複用器的與門
- 使用2:1多路複用器的或門
- 使用2:1多路複用器的非門
- 儲存器件
- 儲存器件
- RAM和ROM
- 快取記憶體儲存器設計
- 可程式設計邏輯器件
- 可程式設計邏輯器件
- 可程式設計邏輯陣列
- 可程式設計陣列邏輯
- 現場可程式設計門陣列
- 數字電子系列
- 數字電子系列
- CPU架構
- CPU架構
- 數位電子資源
- 數位電子 - 快速指南
- 數位電子 - 資源
- 數位電子 - 討論
數位電子 - 解碼器
什麼是解碼器?
在數位電子學中,一種組合邏輯電路,它將N位二進位制輸入程式碼轉換為M個輸出通道,使得對於每一種可能的輸入組合,只有一個輸出通道被啟用,這種電路被稱為解碼器。
換句話說,一種將N條輸入線轉換為最多2N條輸出線的組合邏輯電路稱為解碼器。
因此,解碼器是一種能夠識別或檢測特定程式碼的組合邏輯電路。解碼器執行的操作稱為解碼。解碼器的通用框圖如圖1所示。

這裡,解碼器有N條輸入線和M(2N)條輸出線。在解碼器中,每條輸入線可以是0或1,因此可能的輸入組合或程式碼的數量等於2N。對於這些輸入組合中的每一個,只有M條輸出線中的一條將被啟用,而其他所有輸出線將保持非啟用狀態。
解碼器的型別
存在幾種型別的解碼器。但是,根據存在的輸入和輸出線,解碼器可以分為以下三種類型:
- 2到4解碼器
- 3到8解碼器
- 4到16解碼器
現在,讓我們逐一詳細討論每種型別的解碼器。
2到4解碼器
2到4解碼器是一種具有2條輸入線和4(22)條輸出線的解碼器。2到4解碼器的功能框圖如圖2所示。

當使用使能輸入E使該解碼器啟用時,則對於每種輸入組合,其四個輸出中的一個將被啟用。可以使用下表給出的真值表來分析此2線到4線解碼器的操作。
輸入 | 輸出 | |||||
---|---|---|---|---|---|---|
E | A | B | Y3 | Y2 | Y1 | Y0 |
0 | X | X | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 1 |
1 | 0 | 1 | 0 | 0 | 1 | 0 |
1 | 1 | 0 | 0 | 1 | 0 | 0 |
1 | 1 | 1 | 1 | 0 | 0 | 0 |
使用此真值表,我們可以匯出每個輸出的布林表示式,如下所示:
$$\mathrm{Y_{0} \: = \: E \: \cdot \: \bar{A} \: \cdot \: \bar{B}}$$
$$\mathrm{Y_{1} \: = \: E \: \cdot \: \bar{A} \: \cdot \: B}$$
$$\mathrm{Y_{2} \: = \: E \: \cdot \: A \: \cdot \: \bar{B}}$$
$$\mathrm{Y_{3} \: = \: E \: \cdot \: A \: \cdot \: B}$$
由於每個輸出項都包含輸入變數的乘積,因此可以使用與門來實現。因此,2到4解碼器的邏輯電路圖如圖3所示。

操作
2到4解碼器邏輯電路的操作描述如下:
- 當使能輸入(E)處於非活動狀態,即設定為0時,任何與門都不會工作。
- 當使能輸入(E)透過設定為1使其處於活動狀態時,電路將按以下方式工作。
- 當A = 0且B = 0時,與門1被啟用併產生輸出Y0。
- 當A = 0且B = 1時,與門2被啟用併產生輸出Y1。
- 當A = 1且B = 0時,與門3被啟用併產生輸出Y2。
- 當A = 1且B = 1時,與門4被啟用併產生輸出Y3。
3到8解碼器
3到8解碼器是一種具有3條輸入線和8(23)條輸出線的解碼器。3到8解碼器的功能框圖如圖4所示。

當使用使能輸入E使該解碼器啟用時,則對於每種輸入組合,其八個輸出中的一個將被啟用。可以使用下表給出的功能表來分析此3線到8線解碼器的操作。
輸入 | 輸出 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
E | A | B | C | Y7 | Y6 | Y5 | Y4 | Y3 | Y2 | Y1 | Y0 |
0 | X | X | X | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
1 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
使用此功能表,我們可以匯出每個輸出的布林表示式,如下所示:
$$\mathrm{Y_{0} \: = \: E \: \bar{A} \: \bar{B} \: \bar{C}}$$
$$\mathrm{Y_{1} \: = \: E \: \bar{A} \: \bar{B} \: C}$$
$$\mathrm{Y_{2} \: = \: E \: \bar{A} \: B \: \bar{C}}$$
$$\mathrm{Y_{3} \: = \: E \: \bar{A} \: B \: C}$$
$$\mathrm{Y_{4} \: = \: E \: A \: \bar{B} \: \bar{C}}$$
$$\mathrm{Y_{5} \: = \: E \: A \: \bar{B} \: C}$$
$$\mathrm{Y_{6} \: = \: E \: A \: B \: \bar{C}}$$
$$\mathrm{Y_{7} \: = \: E \: A \: B \: C}$$
我們可以看到,每個輸出項都包含輸入變數的乘積,因此可以使用與門來實現。因此,3到8解碼器的邏輯電路圖如圖5所示。

操作
3到8解碼器邏輯電路的操作描述如下:
- 當使能輸入(E)處於非活動狀態,即設定為0時,任何與門都不會工作。
- 當使能輸入(E)透過設定為1使其處於活動狀態時,電路將按以下方式工作。
- 當A = 0,B = 0,且C = 0時,與門1被啟用併產生輸出Y0。
- 當A = 0,B = 0,且C = 1時,與門2被啟用併產生輸出Y1。
- 當A = 0,B = 1,且C = 0時,與門3被啟用併產生輸出Y2。
- 當A = 0,B = 1,且C = 1時,與門4被啟用併產生輸出Y3。
- 當A = 1,B = 0,且C = 0時,與門5被啟用併產生輸出Y4。
- 當A = 1,B = 0,且C = 1時,與門6被啟用併產生輸出Y5。
- 當A = 1,B = 1,且C = 0時,與門7被啟用併產生輸出Y6。
- 當A = 1,B = 1,且C = 1時,與門8被啟用併產生輸出Y7。
4到16解碼器
4到16解碼器是一種具有4條輸入線和16(214)條輸出線的解碼器。4到16解碼器的功能框圖如圖6所示。

當使用使能輸入E使該解碼器啟用時,則對於每種輸入組合,其十六個輸出中的一個將被啟用。可以使用下表給出的功能表來分析此4線到16線解碼器的操作。
輸入 | 輸出 | ||||
---|---|---|---|---|---|
E | A | B | C | D | |
0 | X | X | X | X | 0 |
1 | 0 | 0 | 0 | 0 | Y0 |
1 | 0 | 0 | 0 | 1 | Y1 |
1 | 0 | 0 | 1 | 0 | Y2 |
1 | 0 | 0 | 1 | 1 | Y3 |
1 | 0 | 1 | 0 | 0 | Y4 |
1 | 0 | 1 | 0 | 1 | Y5 |
1 | 0 | 1 | 1 | 0 | Y6 |
1 | 0 | 1 | 1 | 1 | Y7 |
1 | 1 | 0 | 0 | 0 | Y8 |
1 | 1 | 0 | 0 | 1 | Y9 |
1 | 1 | 0 | 1 | 0 | Y10 |
1 | 1 | 0 | 1 | 1 | Y11 |
1 | 1 | 1 | 0 | 0 | Y12 |
1 | 1 | 1 | 0 | 1 | Y13 |
1 | 1 | 1 | 1 | 0 | Y14 |
1 | 1 | 1 | 1 | 1 | Y15 |
從此功能表中,我們可以直接寫出每個輸出的布林表示式,如下所示:
$$\mathrm{Y_{0} \: = \: E \: \bar{A} \: \bar{B} \: \bar{C} \: \bar{D}}$$
$$\mathrm{Y_{1} \: = \: E \: \bar{A} \: \bar{B} \: \bar{C} \: D}$$
$$Y_2 = E \bar{A} \bar{B} C \bar{D}$$
$$Y_3 = E \bar{A} \bar{B} C D$$
$$Y_4 = E \bar{A} B \bar{C} \bar{D}$$
$$Y_5 = E \bar{A} B \bar{C} D$$
$$Y_6 = E \bar{A} B C \bar{D}$$
$$Y_7 = E \bar{A} B C D$$
$$Y_8 = E A \bar{B} \bar{C} \bar{D}$$
$$Y_9 = E A \bar{B} \bar{C} D$$
$$Y_{10} = E A \bar{B} C \bar{D}$$
$$Y_{11} = E A \bar{B} C D$$
$$Y_{12} = E A B \bar{C} \bar{D}$$
$$Y_{13} = E A B \bar{C} D$$
$$Y_{14} = E A B C \bar{D}$$
$$Y_{15} = E A B C D$$
我們可以像實現2到4譯碼器和3到8譯碼器一樣實現這些輸出表達式。
現在,讓我們討論譯碼器的應用。
譯碼器的應用
譯碼器用於僅在特定輸入程式碼組合出現時啟用輸出或一組輸出的情況。下面列出了一些譯碼器的重要應用:
- 譯碼器用於程式碼轉換。
- 譯碼器廣泛應用於計算機的儲存系統。
- 譯碼器也用於多路分解或資料分配。
- 譯碼器也用於需要非常短的傳播延遲的資料路由應用。
- 譯碼器也可用於定時或排序目的。
- 譯碼器還用於在特定時間開啟和關閉數字裝置。
這就是關於譯碼器及其在數字電子系統中的應用。