文章目录
1、1bit半加器电路
1.1 半加器的工作原理
半加器是一种执行二进制数相加的数字电路。所谓“半加”,就是只求本位的和,暂不管低位送来的进位数,即只有只有加数和被加数相加。它是最简单的数字加法器,您只需使用两个逻辑门即可构建一个;一个异或门和一个 AND 门。
1.2半加器的设计
1.2.1逻辑真值表
输入 | 输入 | 输出 | 输出 |
---|---|---|---|
A | B | C | S |
0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 |
1 | 0 | 0 | 1 |
1 | 1 | 1 | 0 |
1.2.2 逻辑电路图
2、1bit全加器电路
2.1 全加器的工作原理
全加器是用门电路实现两个二进制数相加并求出和的组合线路,称为一位全加器。一位全加器可以处理低位进位,并输出本位加法进位。多个一位全加器进行级联可以得到多位全加器。所谓“全加”就是当两个多位二进制数相加时,除了最低位以外,第二位以上的相加需要考虑低位的进位,即将两个待加数以及一个来自前面低位送来的进位数这三个数相加,得出本位和及进位数。
2.2 全加器的设计
2.2.1逻辑真值表
A | B | C | CO | S |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 | 1 |
0 | 1 | 0 | 0 | 1 |
0 | 1 | 1 | 1 | 0 |
1 | 0 | 0 | 0 | 1 |
1 | 0 | 1 | 1 | 0 |
1 | 1 | 0 | 1 | 0 |
1 | 1 | 1 | 1 | 1 |
A、B:加数 C:低位的进位 S:本位和输出 CO:相邻高位的进位
2.2.2逻辑电路图
3、半加器与全加器的区别
半加器实现两个1位二进制数相加时,不考虑低位的进位,输入变量只有两个:加数和被加数;
全加器实现两个1位二进制数相加时,考虑低位的进位,输入变量有三个:加数、被加数和低位的进位;
4、4位二进制补码器电路
4.1二进制补码原理
补码原理如下:
(1)正数与原码相同;
(2) 负数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1。 同一个数字在不同的补码表示形式中是不同的。比如10进制数值-15的二进制原码是10001111,其补码在8位二进制中是11110001,然而在16位二进制补码表示中,不足位数要用符号位补全,也就是1111111111110001。
4.2负数补码器电路
4.2.1负数补码计算
符号位为1,数值部分“各位取反,末位加1”。即对负数而言,可以先其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变),得到反码,这里可以用到一个非门;然后“末位加1”需用到一个半加器,得到补码。例如:
原码 | 反码 | 补码 |
---|---|---|
1010 | 1101 | 1110 |
1001 | 1110 | 1111 |
1100 | 1011 | 1100 |
4.2.2 电路图
验证其他原码数得到的补码与表格一致
4.3 通用补码器电路(输入既有正数又有负数)
4.3.1 原理分析
当输入既有正数又有负数时,上述的负数补码器电路是不能适用的。
求一个数的补码:对于正数,符号位取0,其余同真值中相应各位;对负数,符号位取1,其余各位由数值部分“各位取反,末位加1”得到。即第一步应考虑数值部分是否取反,此处可运用异或门,若符号位为0(正数),数值部分的各位与符号位作为异或门的两个输入信号,输出信号与数值部分的各位相同;若符号位为1(负数),输出信号与数值部分的各位相反,因此第一步考虑完毕。第二步应考虑末位是否加1,若符号位为0,末位就不加1(相当于末位加上符号位的0);若符号位为1,末位加1(相当于末位加上符号位的1),此处用到一个半加器。
4.3.2 表格分析
原码 | 1010 | 1001 | 1100 | 0001 | 0101 | 0111 |
---|---|---|---|---|---|---|
补码 | 1110 | 1111 | 1110 | 0001 | 0101 | 0111 |
4.3.3 电路图
正数:
负数: