標(biāo)題: 數(shù)字電路設(shè)計-1位十進制減法器的Proteus仿真設(shè)計 [打印本頁]

作者: sfdsl1    時間: 2021-12-4 22:23
標(biāo)題: 數(shù)字電路設(shè)計-1位十進制減法器的Proteus仿真設(shè)計




數(shù)據(jù)輸入電路
將輸入的數(shù)據(jù)進行編碼,得到二進制數(shù)



減數(shù)完成取反操作


對被減數(shù)A與減數(shù)B進行比較
如果A>B,則OUT輸出高電平,那么在進行A-B的計算過程中,就需要將B進行取反然后加1。
如果A<=B,則OUT輸出低電平,那么在進行A-B的計算過程中,就不需要加1


74LS157完成數(shù)據(jù)切換
當(dāng)被減數(shù)A大于減數(shù)B(A>B)時,結(jié)果為正值;

當(dāng)被減數(shù)A小于減數(shù)B(A<B)時,結(jié)果為負值。

計算過程如下所示:
9-3=  9+D=0x16
-3的補碼為D;

0011  --》1100  +1=1101  (D)
因此0x16 (10110)


當(dāng)A>B時


當(dāng)被減數(shù)A大于減數(shù)B(A>B)時,結(jié)果為正值;由于A>B,因此經(jīng)過74LS85比較之后,OUT為高電平,且74HC283得進位輸出端輸出為1,所以符號位數(shù)碼管不顯示,表示結(jié)果是正值。

計算過程如下所示:
9-3=  9+D=0x16
-3的補碼為D;
0011  --》1100  +1=1101  (D)
因此0x16 (10110),低四位為0110,也就是6;
計算過程正確。

當(dāng)A<B時



當(dāng)被減數(shù)A小于減數(shù)B(A<B)時,結(jié)果為負值;由于A<B,因此經(jīng)過74LS85比較之后,OUT為低電平,且74HC283得進位輸出端輸出為0,所以符號位數(shù)碼管顯示負號,表示結(jié)果為負數(shù)。
計算過程如下所示:
6-8=  6+7=13 (1101) 然后取反,得到0010
-8的補碼為7;
1000  --》0111    (7)  (此時不需要加1)
因此1101取反得(0010),低四位為0010,也就是2;
計算過程正確。

仿真文件需要用proteus 8.8版本以上的軟件才能打開:
06_數(shù)字電路_十進制減法器設(shè)計.zip (1.86 MB, 下載次數(shù): 29)

作者: liaohaitao    時間: 2022-7-31 23:35
清晰明了。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1