优秀的编程知识分享平台

网站首页 > 技术文章 正文

数字电路-两个BCD码的加法运算电路

nanyue 2024-08-25 10:23:28 技术文章 12 ℃

目录:

1、什么是BCD码

2、8421 BCD码加法原理

3、BCD码加法电路

4、元件功能

5、BCD码的Verilog代码


前置知识:卡诺图与逻辑代数化简法、数字电路-时序逻辑电路。


1、什么是BCD码

Binary-Coded Decimal?缩写BCD,用4位二进制数来表示1位十进制数中的0~9这10个数码,简称BCD码。日常所说的BCD码大都是指8421 BCD码形式。

8421 BCD码表示形式如下表所示。

1

0001

4

0100

7

0111

2

0010

5

0101

8

1000

3

0011

6

0110

9

1001

2、8421 BCD码加法原理

BCD码中0~9可以用四位二进制数0000~1001表示,而1010~1111这6个数为无效数。两个4位二进制数相加所得的结果超过1001,则将所得数加0110,来跳过6个无效数,并产生一个进位。

3、BCD码加法电路

电路由4位二进制超前进位全加器、进位控制电路、译码器74LS47N、显示电路共4个部分组成。其部分电路如下图所示,仿真原文件下载移步:两个BCD码的加法运算。

也可以使用74LS83N,如下图所示。

4、元件功能

5、BCD码的Verilog代码


  module bcd(cout,sum,ina,inb,cin);
  
  input cin;
  input [3:0] ina,inb;
  output reg [3:0] sum; //等价于output [3:0] sum;reg [3:0] sum;
  output reg cout;
  reg [4:0] temp;
  
  always @(ina, inb, cin)
    begin
      temp<=ina+inb+cin;
      if(temp>9)
        {cout,sum}<=temp+6;
      else
        {cout,sum}<=temp;
   end
 
 endmodule



知我所能,我所能者尽善尽美;知我所不能,我所不能者虚怀若谷。觉得不错,动动发财的小手点个赞哦!关注我,后续干货官方有提醒

最近发表
标签列表