(《计算机科学概论 第11版》)
最左边一位为符号位,正数为0,负数为1;
正数从全为0开始加,负数从全为1开始减,系统所能表示的绝对值最大的数值为除符号位外都取反的值
eg.假设使用长度为4的位模式:
0111:7
0110:6
0101:5
0100:4
0011:3
0010:2
0001:1
0000:0
1111:-1
1110:-2
1101:-3
1100:-4
1011:-5
1010:-6
1001:-7
1000:-8
绝对值
从右往左读,遇到的第一个1及其右侧的数字全部复制、左侧数字全部取反,所得即为原数绝对值——因此知道正数便可以表示出它的负数来了
加法
左边产生的任何一个附加位都要删除
eg.0111(7)+1011(-5)=10010=0010(2)
它展示了二进制补码记数法的一个主要优点:任何带符号数字组合的加法都可以利用相同的算法,于是也就可以用相同的电路
溢出
检查答案的符号位就可以发现溢出的条件。如果两个正数相加得到负数,则溢出