Ⅰ 解碼器是什麼東西
解碼器
(Decoder)
解碼器是組合邏輯電路的一個重要的器件,其可以分為:變數解碼和顯示解碼兩類。
變數解碼一般是一種較少輸入變為較多輸出的器件,一般分為2n解碼和8421BCD碼解碼兩類。
顯示解碼主要解決二進制數顯示成對應的十、或十六進制數的轉換功能,一般其可分為驅動LED和驅動LCD兩類。
變數解碼
變數解碼器是一個將n個輸入變為2n個輸出的多輸出端的組合邏輯電路。其模型可用下圖來表示,其是輸入變化的所有組合中,每個輸出為1的情況僅一次,由於最小項在真值表中僅有一次為1,所以輸出端為輸入變數的最小項的組合。故解碼器又可以稱為最小項發生器電路。
☆ 解碼器電路結構
在討論解碼器的功能前我們來看一下解碼器的內部結構,下圖是一個主要由與門電路構成的2輸入解碼器,其輸出共有22個(即4),從圖上可以每個其輸出對應於一個最小項。在這電路中當輸入BA的取值為10,即對應於十進制數的2時,其F2輸出為高電平,其餘的輸出為0。
下圖同樣是一個2輸入的解碼器,但由於其主要使用了與非門構成的,其每個輸出對應於一個最小項的非。在這電路中,當輸入BA的取會為10時,其輸出F2不再為1,而是輸出為0,其餘的輸出為1。
我們將下面這種解碼器電路看作輸出低電平有效(即當輸入變數對應於十進制i時,其對應的第i個輸出端為低電平,其餘為高電平)。而前面的解碼器當然就是高電平有效了。
上面列出的兩個電路為2輸入的情況,對於輸入為2個以上的情況也與此相同,同樣可以有輸出高電平有效的,也有輸出低電平有效的。
☆ 用解碼器實現邏輯功能
由於任何一組合邏輯電路都可以寫成最小項表達式的形式,而解碼器電路的輸出列出了該電路的所有最小項表達式(或最小項的非表達式),故我們可能用解碼器電路實現各種組合邏輯電路。
例 用解碼電路實現F(X,Y,Z)=∑(0,1,4,6,7)=∏M(2,3,5)
我們實現該邏輯功能可以有幾種方法,下圖列出了四種方法,從這四個圖中你應可以總結出其規律。
其中:
圖a為高電平有較輸出加或門的實現方法;
圖b為低電平有較輸出加與非門的實現方法;
圖c為高電平有較輸出加或非門的實現方法;
圖d為低電平有較輸出加與非門的實現方法;
☆ 使能輸入端(Enable Inputs)
在中規模集成電路中經常會碰到使能端(Enable Pin),使能端可以是輸入,也可以是輸出,其是用來擴展中規模集成電路功能的輸入/輸出端,下圖a是一個2輸入解碼器上加上一個輸入E,由於輸入端E的加入,其功能發生了變化,當E=0時,其輸出全部為0,而該解碼器在沒有加上E端時,其為高電平有效,這時其輸出端沒有一個處於有效工作狀態,我們可以理解為E=0時,該解碼器不工作;當E=1時,我們看到,其解碼器可以正常工作,我們把這種輸入端在E=1時能正常工作的使能端叫做高電平有效。下圖b為其簡化的邏輯符號。
下圖是使用使能端將兩個2 輸入的解碼器轉變為3輸入的解碼器的例子,在下圖中當I2為低電平時,第1個解碼器的使能端為高電平,其正常工作,而第2個解碼器此時不工作,於是解碼器 1的輸出對應於輸入I3I2I1的0~3;當I2為高電平時,解碼器2工作,而解碼器1不工作,故其輸出對應於輸入I2I1I0的4~7,故下圖電路實現了利用使能端將2輸入的解碼器擴展為3輸入的解碼器。
☆標准中規模解碼器電路
在中規模集成電路中解碼器有幾種型號,使用最廣的通常是74138,其是一個3到8的解碼器,下圖是其邏輯符號及管腳排布,下表中列出了該器件的邏輯功能,從表中可以看出其輸出為低電平有效,使能端G1為高電平有效,/G2,/G3為低電平有效,當其中一個為低電平,輸出端全部為1。
輸 入 輸 出
使能端 選 擇 端
G1 /G2* C B A /Y0 /Y1 /Y2 /Y3 /Y4 /Y5 /Y6 /Y7
1 0 0 0 0 0 1 1 1 1 1 1 1
1 0 0 0 1 1 0 1 1 1 1 1 1
1 0 0 1 0 1 1 0 1 1 1 1 1
1 0 0 1 1 1 1 1 0 1 1 1 1
1 0 1 0 0 1 1 1 1 0 1 1 1
1 0 1 0 1 1 1 1 1 1 0 1 1
1 0 1 1 0 1 1 1 1 1 1 0 1
1 0 1 1 1 1 1 1 1 1 1 1 0
× 1 1 1 1 1 1 1 1 1 1 1 1
1 × 1 1 1 1 1 1 1 1 1 1 1
/G2*=/G1A+/G2B
例 試用74138實現函數F(X,Y,Z)=∑m(0,2,4,7)
用74138實現函數與前面講到的解碼器實現邏輯函數的方法相同,但須注意兩點:
1.74138的輸出是低電平有效,故實現邏輯功能時,輸出端不可接或門及或非門(因為每次僅一個為低電平,其餘皆為高電平);
2.74138與前面不同的是,其有使能端,故使能端必須加以處理,否則無法實現需要的邏輯功能。下圖給出了其最終的電路。
顯示解碼
☆常用的顯示器件工作原理
在數字系統中常見的數碼顯示器通常有:發光二極體數碼管(LED數碼管)和液晶顯示數碼管(LCD數碼管)兩種。發光二極體數碼管是用發光二極體構成顯示數碼的筆劃來顯示數字,由於發二極體會發光,故LED數碼管適用於各種場合。液晶顯示數碼管是利用液晶材料在交變電壓的作用下晶體材料會吸收光線,而沒有交變電場作用下有筆劃不會聽吸光,這樣就可以來顯示數碼,但由於液晶材料須有光時才能使用,故不能用於無外界光的場合(現在攜帶型電腦的液晶顯示器是用背光燈的作用下可以在夜間使用),但液晶顯示器有一個最大的優點就是耗電相當節省,所以廣泛使用於小型計算器等小型設備的數碼顯示。
下圖是LED數碼管的內部結構及顯示數碼的情況,其是一個陽極連在一體的一種LED數碼管,我們通常稱為共陽極數碼管。既然有共陽數碼管,那麼就有共陰數碼管,這里沒有畫出其內部結構,請你自行畫一下。
☆LED解碼驅動器
發光二極體點亮只須使其正向導通即可,根據LED的公共極是陽極還是陰極分為兩類解碼器,即針對共陽極的低電平有效的解碼器;針對共陰極LED的高電平輸出有效的解碼器。
4511是輸出高電平有效的CMOS顯示解碼器,其輸入為8421BCD碼,下圖和表分別4511的管腳排布、邏輯符號和邏輯功能表。
輸 入 譯 碼 輸 出
使能輸入 變數輸入
/LT /BL /ST/LE D C B A a b c d e f g
1 1 0 0 0 0 0 1 1 1 1 1 1 0
1 1 0 0 0 0 1 0 1 1 0 0 0 0
1 1 0 0 0 1 0 1 1 0 1 1 1 1
1 1 0 0 0 1 1 1 1 0 0 1 1 1
1 1 0 0 1 0 0 0 1 1 0 0 1 1
1 1 0 0 1 0 1 1 0 1 1 0 1 1
1 1 0 0 1 1 0 0 0 1 1 1 1 1
1 1 0 0 1 1 1 1 1 0 0 0 0 1
1 1 0 1 0 0 0 1 1 1 1 1 1 1
1 1 0 1 0 0 0 1 1 1 0 0 1 1
0 × × × × × × 1 1 1 1 1 1 1
1 0 × × × × × 1 1 1 1 1 1 0
1 1 1 × × × × ※ ※ ※ ※ ※ ※ ※
※ 表示狀態鎖定在LE=0時,D~A的狀態
圖中:
/LT:試燈極,低電平有效,當其為低電平時,所有筆劃全部亮,如不亮表示該筆劃有問題;
/BL:滅燈極,低電平有效,當其為低電平時,不管輸入的數據狀態如何,其輸出全為低電平,即所有筆劃熄滅;
/ST/LE:選通/鎖存極,其是一個復用的功能端,當輸入為低電平時,其輸出與輸入的變數有關;當輸入為高電平時,其輸出僅與該端為高電平前的狀態,並且輸入DCBA端不管如何變化,其顯示數值保持不變。
D,C,B,A:8421BCD碼輸入,其D位為最位;
a~g:輸出端,為高電平有效,故其輸出應與其陰極的數碼管相對應。
☆ LCD解碼驅動器*
LCD解碼驅動器電路與LED的解碼驅動電路不同,其輸出不是高電平或低電平,而是脈沖電壓,當輸出有效時,其輸出為交變的脈沖電壓,否則為高電平或低電平。
Ⅱ 編碼器和解碼器的邏輯功能是什麼
什麼是解碼器
實現解碼器功能的組合邏輯電路稱為解碼器。它的輸入是二進制的代碼,輸出是一組高低電平信號,每輸入一組不同的代碼,只有一個輸出端呈現有效信號.
什麼是編碼器:
完成編碼功能的數字邏輯電路稱為編碼器,其邏輯功能與解碼器正好相反。
解碼器實現「多對一」解碼,而編碼器實現「一對多」解碼。
Ⅲ 解碼器的工作原理
工作原理
解碼器是一種具有「翻譯」功能的邏輯電路,這種電路能將輸入二進制代碼的各種狀態,按照其原意翻譯成對應的輸出信號。有一些解碼器設有一個和多個使能控制輸入端,又成為片選端,用來控制允許解碼或禁止解碼。
在圖1中,74138是一種3線—8線解碼器 ,三個輸入端CBA共有8種狀態組合(000—111),可譯出8個輸出信號Y0—Y7。這種解碼器設有三個使能輸入端,當G2A與G2B均為0,且G1為1時,解碼器處於工作狀態,輸出低電平。當解碼器被禁止時,輸出高電平。
圖2時檢測74ls138解碼器時間波形的電路,使用的虛擬儀器為數字信號發生器和邏輯分析儀。數字信號發生器在一個周期內按順序送出兩組000—111的方波信號。
圖3表明如何將兩片3線—8線解碼器連接成4線—16線解碼器。其中第二片74138的使能端G1和第一片的使能端G2A接成D輸入端。當D=0時,第一片74138工作,對0000—0111的輸入信號進行解碼輸出。當D=1時,第二片74138工作,對1000—1111的輸入信號進行解碼輸出。
在圖4中 ,7442為二—十進制解碼器,具有4個輸入端和10個輸出端。輸入信號採用8421BCD碼,二進制數0000—1001與十進制數0—9對應。當輸入超過這個范圍是無效,10個輸出端均為高電平。7442電路沒有使能端,因此只要輸入在規定范圍內,就會有一個輸出端為低電平。
圖5位BCD—七段顯示解碼器電路,LED數碼管將顯示與BCD碼對應的十進制數0—9。因為顯示解碼器電路輸出高電平,所以應該採用共陰極LED數碼管。
編碼與解碼的過程剛好相反。通過編碼器可對一個有效輸入信號生成一組二進制代碼。有的編碼器設有使能端,用來控制允許編碼或禁止編碼。
優先編碼器的功能是允許同時在幾個輸入端有輸入信號,編碼器按輸入信號排定的優先順序,只對同時輸入的幾個信號中優先權最高的一個進行編碼。在圖6中,74147為BCD優先編碼器,輸入和輸出都是低電平有效。為了取得有效輸出高電平,可在每個輸出端連接一個反相器。7417隻有1—9各輸入端,0輸入端不接入電路。這是因為7417約定,當無有效輸入時,輸出0的BCD代碼0000。
圖7是一個檢測優先編碼/解碼功能的邏輯電路,對每一個接地的邏輯開關,數碼管都會顯示一個相應的十進制數。在輸入端的8個邏輯開關中,代號為[7]的優先順序別最高,代號為[0]的優先順序別最低。
Ⅳ 38編譯器怎麼實現
將輸入的二進制代碼轉換成特定的高(低)電平信號輸出的邏輯電路。
38編譯器是一種全解碼器(二進制解碼器)。全解碼器的輸入是3位二進制代碼,3位二進制代碼共有8種組合,故輸出是與這8種組合一一對應的8個輸出信號。解碼器將每種二進制的代碼組合譯成對應的一根輸出線上的高(低)電平信號。
常見的全解碼器有2-4線解碼器、3-8線解碼器、4-16線解碼器等。如果滿足n<2n,稱為部分解碼器,如二-十進制解碼器(又稱4-10解碼器)、顯示解碼器等。
Ⅳ 解碼器是什麼電路他的特點是什麼
解碼器是電子技術中的一種多輸入多輸出的組合邏輯電路,負責將二進制代碼翻譯為特定的對象(如邏輯電平等),功能與編碼器相反。解碼器一般分為通用解碼器和數字顯示解碼器兩大類。
數字電路中,解碼器(如n線-2n線BCD解碼器)可以擔任多輸入多輸出邏輯門的角色,能將已編碼的輸入轉換成已編碼的輸出,這里輸入和輸出的編碼是不同的。
輸入使能信號必須接在解碼器上使其正常工作,否則輸出將會是一個無效的碼字。解碼在多路復用、七段數碼管和內存地址解碼等應用中是必要的。
原理
解碼器可以由與門或與非門來負責輸出。若使用與門,當所有的輸入均為高電平時,輸出才為高電平,這樣的輸出稱為「高電平有效」的輸出;若使用與非門,則當所有的輸入均為高電平時,輸出才為低電平,這樣的輸出稱為「低電平有效」的輸出。
更復雜的解碼器是n線-2n線類型的二進制解碼器。這類解碼器是一種組合邏輯電路,能從已編碼的n個輸入,將二進制信息轉換為2n個獨特的輸出中最大個數的輸出。我們說2n個輸出的最大個數,是因為當n位已編碼信息中有未使用的位組合時,解碼器可能會有少於2n個輸出。
解碼器包括2線-4線解碼器、3線-8線解碼器或4線-16線解碼器。在有使能信號輸入的情況下,2個2線-4線解碼器可以組成1個3線-8線解碼器,同樣,2個3線-8線解碼器可以組成1個4線-16線解碼器。
在這類電路設計中,2個3線-8線解碼器的使能輸入都來自於第四個輸入端,這一輸入在2個3線-8線解碼器間起到了選擇器的作用t。這使得第四個輸入端可以使2個解碼器中的任何一個工作,其中第一個解碼器產生輸出D(0)至D(7),第二個解碼器產生輸出D(8)至D(15)。
包含使能輸入的解碼器又稱解碼器-多路分配器。因此,將第四個輸入端作為2個解碼器共享的輸出就能組成1個4線-16線解碼器,能產生16個輸出。
(5)編譯器是什麼電路擴展閱讀:
分類
解碼器的種類很多,但它們的工作原理和分析設計方法大同小異,其中二進制解碼器、二-十進制解碼器和顯示解碼器是三種最典型,使用十分廣泛的解碼電路。
二進制碼解碼器,也稱最小項解碼器,N中取一解碼器,最小項解碼器一般是將二進制碼譯為十進制碼。
代碼轉換解碼器,是從一種編碼轉換為另一種編碼。
顯示解碼器,一般是將一種編碼譯成十進制碼或特定的編碼,並通過顯示器件將解碼器的狀態顯示出來。
Ⅵ 哪位大神能給我說說編譯器是怎麼編成的,它的物理電路大概是怎麼實現的,它怎麼工作
你問的這個問題有點復雜,沒法給你說呀 你什麼專業呀 有基礎嗎
Ⅶ 編譯器由什麼組成
編譯器:翻譯工具,把高級語言源程序翻譯為匯編語言源程序,再把匯編源序翻譯成目標代碼供連接程序使用。
語言:一個規則。例如:C語言,它規定程序入口為main(),和其它規定。並把這些 <規定的集合> 命名為C語言。
TC:一個開發工具,它包括文本編輯器,編譯器,連接程序,調試環境等等。TC中的編譯器是TCC.EXE文件。
關於匯編:
匯編語言是一個規則,
匯編程序是一個翻譯工具
匯編源程序是一個 符合(匯編語言)規則的程序代碼
匯編是一個過程,這個過程是匯編程序 把匯編源程序 翻譯 為目標代碼的過程
對於高級語言:翻譯的過程叫做編譯,翻譯工具叫做編譯程序或編譯器。
Ⅷ 如何製作單片機編譯器(要詳細資料和原理圖)
編譯器是一個程序,自己設計可不簡單哦!你說的應該是編程器吧?現在的單片機都支持ISP或者IAP和JTAG,不需要編程器,只要一根下載線就可以把程序寫入單片機了,而且可以在應用電路中實時模擬,不需要模擬器。比如AT89S、AT90S,ATMEGA系列的單片機都支持ISP,ATMEGA16以上的單片機還支持JTAG,因此可以實時監控單片機的運行情況,記即相當於模擬。
模擬器是OTP/EPROM或ROMless單片機時代的產物,我敢肯定的說,模擬器在現在只能影響我們對單片機的學習,因此不建議使用。