SCAU华南农业大学-数电实验-用74LS283实现BCD码转Binary码

在看所有东西之前,因为这里已经有正确实现了。如果还没有思考的同学想临时抱佛脚的,或者是实验课直接对着抄的,我劝你还是不要看了,学习是自己的事情。

如果实在想不出来,或者是想找找有没有其他solution,乐意交流。[握手]

实验要求:只用两块74LS283来实现两位BCD码转为二进制码。

后一位BCD码表示个位可以直接用,前一位BCD码表示的是十位,要乘10

首先BCD码转成十进制是如何进位的?

BCD码每往左移动一个单位,就扩大两倍。如0010(2)变成0100(4)。所以要把BCD码扩大十倍,就是把BCD码往左移动一个单位,加上BCD码往左移动三个单位(扩大两倍+扩大八倍=扩大十倍)。

假设前四位为B3B2B1B0,后四位为A3A2A1A0.

写出表达式就是这样子的:

此时开始接电路,考虑到只有两块74LS283,接口要省点用,观察可以得知U0=A0,也就是直接得到binary的最后一位输出了。

再观察(A1+B0),(A2+B1),可以直接用加法器实现,(A3+B2)后,再接下一个加法器的输入实现(A3+B2)+B0;

此时关键点来了,如果这点没考虑到,整个电路就错了。(A3+B2)如果产生进位1,这个进位1如果和B3相加后又产生进位1,该加到哪里。电路应该怎么接才能不漏掉这个进位。

此时刚开始省掉的A0不用通过加法器省接口就很有用了。直接上图:

很重要的一个想法就是,不要把这个74LS283看作一个整体,把它看成是八个一加一的全加器,考虑到它的进位都到哪里去了。不要漏掉就行。

当然,条条大路通罗马,这仅仅是我的做法。

  • 11
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值