第1章 二进制数加法电路
1.1 复习笔记
一、二进制数的相加
1. 两个二进制数相加示例
【例1.1】
(1)
加数A和被加数B都是1位数,其和S变成2位数,这是因为相加结果产生进位之故。 (2)
A和B都是2位数,相加结果S也是2位数,因为相加结果不产生进位。
(3)
A和B都是2位数,相加结果S是3位数,这也是产生了进位之故。
(4)
例1.1(4)是例1.1(3)的另一种写法,以便看出“进位”究竟是什么意义。
① 第1位(或称0权位)是不可能有进位的,要求参与运算的就只有两个数A0和B0,其结果为S0。 ② 第2位(或称1权位)就是3个数A1,B1及C1参与运算了。其中C1是由于第1位相加的结果产生的进位。此3个数相加的结果其总和为S1=1,同时又产生进位C2,送入下一位(第3位)。
③ 第3位(或称2权位)也是3个数A2,B2及C2参加运算。由于A2及B2都是0,所以S2即等于第3位的相加结果S2。
2. 结论
(1) 两个二进制数相加时,可以逐位相加。如二进制数可以写成:
则从最右边第1位(即0权位)开始,逐位相加,其结果可以写成:
其中各位是分别求出的:
最后所得的和是:
(2) 右边第1位相加的电路要求:
输入量为两个,即A0及B0; 输出量为两个,即S0及C1。
这样的一个二进制位相加的电路称为半加器(half adder)。
(3) 从右边第2位开始,各位可以对应相加。各位对应相加时的电路要求:
输入量为3个,即Ai,Bi,Ci; 输出量为两个,即Si,Ci+1。
其中i=1,2,3,…,n。这样的一个二进制位相加的电路称为全加器(full adder)。
二、半加器电路
1. 要求
有两个输入端,用于两个代表数字(A0,B0)的电位输入;有两个输出端,用于输出总和S0及进位 C1。这样的电路可能出现的状态可以用图1-1中的表来表示。此表在布尔代数中称为真值表。
图1-1 半加器的真值表及电路
2. 输出与输入之间的关系
(1) 考察C1与A0及B0的关系,即可看出这是“与”的关系,即:
C1=A0×B0
(2) 考察S0与A0及B0的关系,可看出这是“异或”的关系,即:
3. 结论
只有当A0及B0二者相异时,才起到或的作用;二者相同时,则其结果为0。因此,可以用“与门”及“异或门”(或称“异门”)来实现真值表的要求。
三、全加器电路
1. 要求及实现
全加器电路的要求是:有3个输入端,以输入Ai,Bi和Ci,有两个输出端,即Si及 Ci+1。其真值表可以写成如图1-2所示。由图1-2中左边的表分析可见,其总和Si可用“异或门”来实现,而其进位Ci+1则可以用3个“与门”及一个“或门”来实现,其电路图也画在图1-2中的右边。
图1-2 全加器的真值表及电路
2. 判断多输入的“异或门”的输入输出的关系
这里遇到了3个输入的“异或门”的问题。判断的方法是:多输入A,B,C,D,…中为1的输入量的个数为零及偶数时,输出为0;为奇数时,输出为1。
四、半加器及全加器符号
图1-3(a)为半加器符号,图1-3(b)为全加器符号。
图1-3 半加器及全加器符号
五、二进制数的加法电路 设
A=1010=10(10) B=1011=11(10)
则可安排如图1-4所示的加法电路。
图1-4 4位的二进制加法电路
A与B相加,写成竖式算法如下:
即其相加结果为S=10101。
从加法电路,可看到同样的结果:
郑学坚微型计算机原理及应用第4版知识点总结课后答案



