BCD 代表二进制编码的十进制。假设我们有两个 4 位数字 A 和 B。 A 和 B 的值可以从 0(二进制的 0000)到 9(二进制的 1001)变化,因为我们正在考虑十进制数。
如果我们不考虑前一个总和的进位,输出将在 0 到 18 之间变化。但如果我们考虑进位,那么输出的最大值将是 19(即 9+9+1 = 19)。
当我们简单地将 A 和 B 相加时,我们得到二进制和。在这里,为了获得 BCD 形式的输出,我们将使用 BCD Adder。
示例 1:
Input :
A = 0111 B = 1000
Output :
Y = 1 0101
Explanation: We are adding A(=7) and B(=8).
The value of binary sum will be 1111(=15).
But, the BCD sum will be 1 0101,
where 1 is 0001 in binary and 5 is 0101 in binary.
示例 2:
Input :
A = 0101 B = 1001
Output :
Y = 1 0100
Explanation: We are adding A(=5) and B(=9).
The value of binary sum will be 1110(=14).
But, the BCD sum will be 1 0100,
where 1 is 0001 in binary and 4 is 0100 in binary.
注 –如果两个数之和小于或等于 9,则 BCD 和和二进制和的值将相同,否则它们将相差 6(二进制为 0110)。
现在,让我们转到表格,找出我们要添加“0110”时的逻辑。
我们仅将“0110”(=6) 添加到表的后半部分。
条件是:
- 如果 C’ = 1(满足 16-19)
- 如果 S3′.S2′ = 1(满足 12-15)
- 如果 S3′.S1′ = 1(满足 10 和 11)
所以,我们的逻辑是
C' + S3'.S2' + S3'.S1' = 1
执行 :
阅读相关文章:BCD to 7 Segment Decoder, BCD(8421) to/from Excess-3