欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 有關(guān)編碼譯碼的問題 八位二進制數(shù)范圍00000000-11111111 [打印本頁]

作者: 茉莉星瞳    時間: 2021-12-30 22:59
標(biāo)題: 有關(guān)編碼譯碼的問題 八位二進制數(shù)范圍00000000-11111111
八位二進制數(shù)范圍00000000-11111111,應(yīng)該通過哪些編碼器,譯碼器,二進制轉(zhuǎn)8421BCD碼在數(shù)碼管顯示出來,單一塊74147好像數(shù)據(jù)范圍不夠啊
作者: angmall    時間: 2021-12-31 09:58
可在百科上搜索Double dabble

在計算機科學(xué)中,Double Dabble 算法用于將二進制數(shù)轉(zhuǎn)換為二進制編碼的十進制 (BCD) 表示法。 它也被稱為 shift-and-add-3 算法,可以使用計算機硬件中的少量門來實現(xiàn),但以高延遲為代價。

算法
該算法的操作如下:

假設(shè)要轉(zhuǎn)換的原始數(shù)字存儲在 n 位寬的寄存器中。預(yù)留足夠?qū)挼臅捍婵臻g以容納原始數(shù)字及其 BCD 表示; n + 4×ceil(n/3) 位就足夠了。存儲每個十進制數(shù)字最多需要 4 位二進制。

然后將暫存空間劃分為 BCD 數(shù)字(左側(cè))和原始寄存器(右側(cè))。例如,如果要轉(zhuǎn)換的原始數(shù)字為 8 位寬,則暫存空間將按如下方式分區(qū):

百位  十位   個位    原件
0010  0100  0011  11110011
上圖顯示了原始寄存器中 243(10) 的二進制表示,以及左側(cè) 243 的 BCD 表示。

暫存空間初始化為全零,然后將要轉(zhuǎn)換的值復(fù)制到右側(cè)的“原始寄存器”空間中。

0000 0000 0000 11110011
然后該算法迭代 n 次。在每次迭代中,任何至少為 5(二進制為 0101)的 BCD 數(shù)字都會增加 3(0011);然后整個暫存空間左移一位。增量確保值 5,增加并左移,變?yōu)?16 (10000),從而正確“進位”到下一個 BCD 數(shù)字。

本質(zhì)上,該算法的運行方式是每次迭代將左側(cè)的 BCD 值加倍,并根據(jù)原始位模式添加 1 或 0。向左移動可同時完成兩項任務(wù)。如果任何數(shù)字為 5 或以上,則添加 3 以確保該值以 10 為基數(shù)“進位”。

對值 243(10) 執(zhí)行的雙重涉獵算法如下所示:

百位 十位  個位
0000 0000 0000 11110011 初始化
0000 0000 0001 11100110 左移
0000 0000 0011 11001100 左移
0000 0000 0111 10011000 左移
0000 0000 1010 10011000 將 3 添加到個位數(shù),因為它是 7
0000 0001 0101 00110000 左移
0000 0001 1000 00110000 將 3 添加到個位數(shù),因為它是 5
0000 0011 0000 01100000 左移
0000 0110 0000 11000000 左移
0000 1001 0000 11000000 將 3 添加到十位數(shù),因為它是 6
0001 0010 0001 10000000 左移
0010 0100 0011 00000000 左移
   2     4     3
        BCD

作者: 名字不是重點    時間: 2021-12-31 15:47
要把8位2進制轉(zhuǎn)為12位的2進制,再每4位通過譯碼器驅(qū)動數(shù)碼管。難點在于“8位2進制轉(zhuǎn)為12位的2進制”
作者: Hephaestus    時間: 2021-12-31 15:59
你的要求隨便找個CPLD就能做了。
作者: 名字不是重點    時間: 2021-12-31 16:25
Hephaestus 發(fā)表于 2021-12-31 15:59
你的要求隨便找個CPLD就能做了。

能用CPLD,還不如用MCU。。成本低好多。

樓主想要純數(shù)字電路來搭一個電路的,這幾天發(fā)了好多貼呢
作者: xuyaqi    時間: 2021-12-31 16:26
74147只負(fù)責(zé)把二進制碼轉(zhuǎn)為BCD碼,要完成00000000-11111111數(shù)碼管顯示,一個74147只完成個位二進制碼轉(zhuǎn)BCD碼,要加一個74147完成十位二進制碼轉(zhuǎn)BCD碼。
作者: Hephaestus    時間: 2021-12-31 21:51
xuyaqi 發(fā)表于 2021-12-31 16:26
74147只負(fù)責(zé)把二進制碼轉(zhuǎn)為BCD碼,要完成00000000-11111111數(shù)碼管顯示,一個74147只完成個位二進制碼轉(zhuǎn)BCD ...

11111111又不是BCD碼,樓主要求明顯是要把八位二進制輸入顯示成0~255,這個用74LS147是無論如何都不能完成的。
作者: xuyaqi    時間: 2022-1-1 10:05
Hephaestus 發(fā)表于 2021-12-31 21:51
11111111又不是BCD碼,樓主要求明顯是要把八位二進制輸入顯示成0~255,這個用74LS147是無論如何都不能完 ...

我已經(jīng)說了“74147只負(fù)責(zé)把二進制碼轉(zhuǎn)為BCD碼”要顯示肯定要加其他元件,我只是回答樓主“單一塊74147好像數(shù)據(jù)范圍不夠啊”。
作者: 茉莉星瞳    時間: 2022-1-1 16:35
名字不是重點 發(fā)表于 2021-12-31 16:25
能用CPLD,還不如用MCU。。成本低好多。

樓主想要純數(shù)字電路來搭一個電路的,這幾天發(fā)了好多貼呢[em31 ...

這51能完成的事兒當(dāng)然能完成啊,但是要求就是不用任何MCU純電路搭建
作者: 茉莉星瞳    時間: 2022-1-1 16:57
angmall 發(fā)表于 2021-12-31 09:58
可在百科上搜索Double dabble

在計算機科學(xué)中,Double Dabble 算法用于將二進制數(shù)轉(zhuǎn)換為二進制編碼的十 ...

大哥牛啊,我去試試




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