半加器,全加器及应用
常用逻辑门
半加器
两个二进制的数A,B相加,即左边的两个数
通过异或门得到本位上应得的数据
通过与门得到进位所得的数据。
x | y | 本位输出s | 进位输出c |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 1 | 1 | 0 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 1 |
全加器
将第三个数与前两个数再次相加,应该从最低位开始加
前两个数通过异或门所得的结果sum1
sum1与第三个数通过异或门连接得到最终的最低位s
sum1与第三个数通过与门得到进位c2
前两个数通过与门得到的进位c1,再与c2通过或门相连,得到最终的进位c
x | y | 进位输入 | 本位和输出 | 进位输出 |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 0 |
1 | 0 | 0 | 1 | 0 |
1 | 1 | 0 | 0 | 1 |
0 | 0 | 1 | 1 | 0 |
0 | 1 | 1 | 0 | 1 |
1 | 0 | 1 | 0 | 1 |
1 | 1 | 1 | 1 | 1 |
四位二进制补码器电路
**要求:**当输入一个4位二进制数后,补码电路将输出对应的4位二进制补码。
原码转补码的原理,如下:
- 正数的补码与原码相同 ,类如,二进制数0010的补码还是0010。
- 负数的补码是将其原码除符号位外的所有位取反(0变1,1变0,符号位1不变)后,再加1。
先将符号位与后面其他位置通过异或门相连
若符号位为0,则是正数,后面的数据不变
若符号位为1,则是负数,后面的数据相反
再将得到的数的最低位与符号位用半加器连接
若是正数,则0与最低位相加,即原数
若是负数,则1与最低位相加,即原数+1
从最低位到非符号位的最高位依次使用半加器相连(进位与对应的本位数相加),最后得到的结果即为所得补码