74LS138设计一位二进制全减器

1) 首先我们要知道什么是全减器,先弄懂全减器。
全减器真值表如图。下面来讲解一下这个全减器。
这里的Ci A B是输入信号,Co D 是输出信号。这个非常重要。
一位全减器真值表
表中字符含义
Ci :表示来自低位的借位,很多人第一次不懂低位来的进位是什么意思,你可以这样想,先考虑咱们常见的十进制减法。这里只是计算某一位数相减,可能有两种情况。1)减数小于被减数,需要向高位借位,那么问题就来了,向高位借位后高位是不是应该减个一。此时这里的高位就产生了来自低位的结尾。2)减数不小于被减数,就好理解了。在这里举个栗子:21-12。首先看个位,1-2不够是不是要向高位借1当10,个位计算完了之后计算十位,2-1很明显等于1,然而这样算下去就是21-12=19了,显然是不对了,这个时候你是不是有了一点感觉,明白了什么是来自低位的借位了,没错,由于个位向高位借了1,所以十位产生了来自低位的借位。
A : 被减数 B : 减数
Co :向高位的借位 D : 两数的差
在这里我们已第二行为例子 0 0 1 1 1
输入0 0 1,首先没有低位来的借位,所以被减数0就是0,然后0-1是不够的,所以需要向高位借1当2,所以输出的Co为1,这里的Co的值在下一位的计算中就成了来自低位的借位Ci。由于向高位借1,所以A=0+1*2; A-B=2-1=1;所以结果D等于1.所以输出1。正如上面强调的那样,前三位是输入位,后两位为输出位。
其他行一样理解。
2) 理解3-8译码器,简单来说,3-8译码器输入三位二进制数,输出一个一位十进制数,但这里是低电平输出有效,比如输入001,输出应该是10111111,这里只有0有效,此时这个0代表的是1( 因为从左到右依次是0-7)。
根据输出Co的情况: Co=Ci’A’B+CiA’B’+CiA’B+CiAB=001+100+101+111=m1+m4+m5+m7=(m1’m4’m5’m7’)’
同理得到D的情况: D=…………………………… =001+010+100+111=(m1’m2’m4’m7’)’

  1. 最后用译码器进行设计。
    这里我直接画在纸上(画的丑见谅)
    画的不是很漂亮

猜你喜欢

转载自blog.csdn.net/NIUNIUDEDALAO/article/details/105126667