十进制或 BCD 加法器

2025年3月17日 | 阅读 3 分钟

BCD 加法器用于计算机和计算器,它们直接以十进制数字系统执行算术运算。 BCD 加法器接受十进制数的二进制编码形式。十进制加法器至少需要九个输入和五个输出。

注意:十进制数字需要 4 位才能以 BCD 码表示,并且电路必须具有输入进位和输出进位。

以下是用于设计 BCD 加法器的表格。

Decimal or BCD Adder

从上表可以看出,如果产生的和在 1 到 9 之间,则二进制码和 BCD 码相同。但对于 10 到 19 的十进制数字,两个代码不同。在上表中,10 到 19 的二进制和组合会产生无效的 BCD。以下几点有助于电路识别无效的 BCD。

  1. 从表中可以明显看出,当“二进制和”具有输出进位 K=1 时,需要进行校正。
  2. 从 10 到 15 的其他六个组合需要校正,其中 Z8 位置上的位为 1。
  3. 在 8 和 9 的二进制和中,Z8 位置上的位也为 1。因此,第二步失败,我们需要对其进行修改。
  4. 为了区分这两个数字,我们指定 Z4 或 Z2 位置上的位也需要与 Z8 的位相同为 1
  5. 校正和输出进位的条件可以用布尔函数表示

C=K+Z8.Z4+Z8.Z2

一旦电路发现无效的 BCD,电路会将二进制数字 6 添加到无效的 BCD 代码中,使其有效。

Decimal or BCD Adder

在上图中,

  1. 我们采用一个 4 位二进制加法器,它将加数和被加数位作为输入,并带有输入进位“进位输入”
  2. 二进制加法器产生五个输出,即 Z8、Z4、Z2、Z1 和一个输出进位 K。
  3. 借助输出进位 K 和 Z8、Z4、Z2、Z1 输出,设计逻辑电路以识别 Cout
  4. 二进制加法器的 Z8、Z4、Z2 和 Z1 输出作为被加数传递到第二 个 4 位二进制加法器。
  5. 第二个 4 位二进制加法器的加数位的设计方式是,加数数字的第 1 位和第 4 位为 0,第 2 位和第 3 位与 Cout 相同。当 Cout 的值为 0 时,加数数字将为 0000,这产生与第一个 4 位二进制数字相同的结果。但是,当 Cout 的值为 1 时,加数位将为 0110,即 6,它与 augent 相加即可获得有效的 BCD 数字。

示例:1001+1000

  1. 首先,使用 4 位二进制加法器将两个数字相加,并将输入进位传递给 0。
  2. 二进制加法器产生结果 0001 并携带输出“K” 1。
  3. 然后,找到 Cout 值,以使用表达式 Cout=K+Z8.Z4+Z8.Z2 识别生成的 BCD 无效还是有效。
    K = 1
    Z8 = 0
    Z4 = 0
    Z2 = 0
    Cout = 1+0*0+0*0
    Cout = 1+0+0
    Cout = 1
  4. Cout 的值为 1,表示生成的 BCD 代码无效。然后,将第一个 4 位二进制加法器的输出与 0110 相加。
    = 0001+0110
    = 0111
  5. BCD 由进位输出表示为
    BCD=Cout Z8 Z4 Z2 Z1=1 0 1 1 1

下一主题解码器