题解 | #全加器#

全加器

https://www.nowcoder.com/practice/d04c046febb74e72949baee9aa99d958

`timescale 1ns/1ns

module add_half(
   input                A   ,
   input                B   ,
 
   output	wire        S   ,
   output   wire        C   
);

assign S = A ^ B;
assign C = A & B;
endmodule

/***************************************************************/
module add_full(
   input                A   ,
   input                B   ,
   input                Ci  , 

   output	wire        S   ,
   output   wire        Co   
);

wire S1;
wire S2;
wire C1;
wire C2;

add_half uut1(
    .A  (A),
    .B  (B),
    .S  (S1),
    .C  (C1)
);

add_half uut2(
    .A  (Ci),
    .B  (S1),
    .S  (S),
    .C  (C2)
);

assign S = Ci ^ S1;
assign Co = C1 | C2;

endmodule

1、半加器

在数学系统中,二进制加法器是它的基本部件之一。

半加器(半加就是只求本位的和,暂不管低位送来的进位数)的逻辑状态表

其中,A和B是相加的两个数,S是半加和数,C是进位数。

由逻辑状态表可写出逻辑式:

由逻辑式就可画出逻辑图,如下图(a)和(b)所示,由一个“异或“门和一个”与“门组成。半加器是一种组合逻辑电路,其图形符号如下图(c)所示。

两个半加器和一个或门可以组成全加器

2、全加器

当多位数相加时,半加器可用于最低位求和,并给出进位数。第二位的相加有两个待加数和,还有一个来自前面低位送来的进位数。这三个数相加,得出本位和数(全加和数)和进位数。这种就是“全加“,下表为全加器的逻辑状态表。

全部评论

相关推荐

投递中移(苏州)软件技术有限公司等公司10个岗位 > 牛客解忧铺
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务