数字电子技术基础(四十六)——数值比较器

1 数值比较器

1.1 1位数值比较器

数值比较器是用于比较两个数字大小的组合电路,能够确定两个二进制数是否相等,或者哪一个二进制数更大。

如下所示为数值比较器的电路图:

图1 数值比较器的电路图

在上图中,各个输出变量的Y _1Y_2Y_3

                                            Y_1=((A+(A+B)')'+(B+(A+B)')')'

                                                  =(A+(A+B)')(B+(A+B)')

                                                   =AB+A(A+B)'+B(A+B)'+A'B'

                                                   =AB+A'B'

                                             Y_2=(A+(A+B)')'=A'(A+B)

                                                    =A'B

                                              Y_3=((A+B)'+B)'=(A+B)B'

                                                   =AB'

真值表为:

表1 数值比较器的真值表
ABY_1Y_2Y_3
00100
01010
10001
11100

通过上面真值表可以得到:

  • Y_1=1Y_2=0Y_3=0,则说明A和B的数值相等。
  • Y_1=0Y_2=1Y_3=0,则说明A<B。
  • Y_1=0Y_2=0Y_3=1,则说明A>B。

1. 2 多位数值比较器

多位比较器用于比较两个多位二进制。比较两个多位二进制时,必须从高到低逐位比较,只有当高位相等的时候,才需要比较低位。

例如,对于两个无符号位的二进制数A_3A_2A_1A_0B_3B_2B_1B_0,下面对于这两个进行比较:

图2 两个四位无符号位的二进制之间数值的比较

首先先对于A_3B_3进行比较,如果A_3>B_3,则Y_{A>B},如果A_3<B_3,则Y_{A<B},如果A_3=B_3,则需要参考低位的比较结果。A_3B_3之间的比较如下所示:

图3 A3与B3之间比较

如果在A_3=B_3的情况下,需要参考低位的比较结果。如果A_2>B_2,则Y_{A>B},如果A_2<B_2,则Y_{A<B},如果A_2=B_2,需要进一步参考低位的比较结果。A_2B_2之间的比较如下所示:

图4 A2与B2之间的比较

如果在A_3=B_3A_2=B_2的情况下,需要参考低位的比较结果。如果A_1>B_1,则Y_{A>B},如果A_1<B_1,则Y_{A<B},如果A_1=B_1,需要进一步参考低位的比较结果。A_1B_1之间的比较如下所示:

图5 A1与B1之间的比较

如果在A_3=B_3A_2=B_2A_1=B_1的情况下,需要参考低位的比较结果。如果A_0>B_0,则Y_{A>B},如果A_0<B_0,则Y_{A<B},如果A_0=B_0,则Y_{A=B}A_0B_0之间的比较如下所示:

图6 A0与B0之间的比较

结合结果,可以得到逻辑式:

   Y_{A>B}=A_3B_3'+(A_3\bigoplus B_3)'.A_2B_2'         

               +(A_3\bigoplus B_3)'.(A_2\bigoplus B_2)'.A_1B_1'+(A_3\bigoplus B_3)'.(A_2\bigoplus B_2)'.(A_1\bigoplus B_1)'.A_0B_0'     Y_{A<B}=A_3'B_3+(A_3\bigoplus B_3)'.A_2'B_2                   

                +(A_3\bigoplus B_3)'.(A_2\bigoplus B_2)'.A_1'B_1+(A_3\bigoplus B_3)'.(A_2\bigoplus B_2)'.(A_1\bigoplus B_1)'.A_0'B_0

   Y_{A=B}=(A_3\bigoplus B_3)'.(A_2\bigoplus B_2)'.(A_1\bigoplus B_1)'.(A_0\bigoplus B_0)'

1.3 74HC85芯片

74HC85是一款四位二进制数值比较器,是高速CMOS逻辑芯片,该芯片具有级联输入,允许将多个74HC84连接起来,以比较更长的二进制数。

如下所示为74HC85芯片的电路结构图:

图7 74HC85芯片的电路图

如下所示为74HC85芯片的逻辑框图:

图8 74HC85芯片的逻辑框图

 对于74HC85芯片来说,其中首先对于A_3A_2A_1A_0B_3B_2B_1B_0之间进行比较,如果A_3A_2A_1A_0>B_3B_2B_1B_0,则输出A>B,如果A_3A_2A_1A_0<B_3B_2B_1B_0,则输出A<B,如果A_3A_2A_1A_0=B_3B_2B_1B_0,则比较串行进位端,三个串行进位端分别表示的意义是I_{(A>B)}I_{(A=B)}I_{(A<B)}。比较这三个输出结果,如果是I_{(A>B)}=1,则输出A>B,如果I_{(A=B)}=1,则输出A=B,如果I_{(A<B)}=1,则输出A<B。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

每月一号准时摆烂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值