(一)补码加减法
公式
p.s. [x]为x的补码,下同
(二)溢出和检测
1.溢出:在运算过程中如出现大于字长的现象
正溢:两个正数相加,结果大于机器字长所能表示的最大正数
负溢:同正溢相对
2.检测方法
(1)变形补码:
(i)变形补码的变换公式
同时,易证变形补码同样满足补码的加法公式
(ii)验证过程
任何正数符号位00,负数符号位11,如果两数变形补码相加后,其结果的符号位出现01表示正溢,出现10表示负溢,无论是否溢出,最高位指使正确的符号
(2)单符号位法
p.s. 表示符号位是否产生进位,表示最高有效位是否产生进位
(三)基本的二进制加法/减法器
1.一位全加器
原理:两个二进制数字,和一个进位输入相加,产生一个和一个进位输入;用于记录当前位数字,用于记录下一位是否进位
输入 | 输出 | |||
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 0 |
1 | 0 | 0 | 0 | 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 |
2.n位行波进位加减器
(1)n个1位全加器可级联成一个n位的行波进位加减器
(2)延迟时间
p.s. 2T为每级进位的时间延迟,9T为最低位上两级“异或”门再加上溢出“异或”门的总时间