问答题
用二进制补码运算计算下列各式。式中的4位二进制数是不带符号位的绝对值。如果和为负数,请求出负数的绝对值。(提示:所用补码的有效位数应足够表示代数和的最大绝对值)
【正确答案】由于1101+1011和-1101-1011的绝对值均为(24)10,即为(11000)2,所以必须用有效数字为5位的二进制数,再加上一位符号位共6位来表示二进制补码。解题的基本思路是,先将各二进制数用6位的二进制原码表示,当两个数均为正数且做加法时,两个数的补码即为这两个数的原码。当两个数为负数时,需先将这两个数转换成补码然后再做加法运算。
先求两个数的原码和补码(带符号数,共6位):
+1010的原码为001010,补码为001010;+0011的原码为000011,补码为000011,这两个数的补码求和运算为
001010
+000011
001101
由式可知,和的补码为001101,为正数。
【答案解析】
【正确答案】+1101的原码为001101,补码为001101;
+1011的原码为001011,补码为001011,
这两个数的补码求和运算为
001101
+001011
011000
由式可知,和的补码为011000,为正数。
【答案解析】
【正确答案】+1010的原码为001010,补码为001010;
-0011的原码为100011,补码为111101,
这两个数的补码求和运算为
001010
+111101
000111
由式可知,和的补码为000111,是正数。
【答案解析】
【正确答案】+1101的原码为001101,补码为001101;
-1011的原码为101011,补码为110101,
001101
+110101
000010
由式可知,两个数之和为正数。
【答案解析】
【正确答案】+0011的原码为000011,补码为000011;
-1010的原码为101010,补码为110110,
这两个数的补码求和运算为
000011
+110110
111001
由式可知,两个数之和为负数,为求其绝对值,先将和的补码转换为原码后再求。111001的原码为100111,故和的绝对值为(00111)2(即为(7)10)。
【答案解析】
【正确答案】+1011的原码为0010111,补码为001011;
-1101的原码为101101,补码为110011,
001011
+110011
111110
由式可知,这两个数之和为负数。将结果转换成原码为100010,故和的绝对值为(00010)2(即为(2)10)。
【答案解析】
【正确答案】-0011的原码为100011,补码为111101;
-1010的原码为101010,补码为110110,
两个数的补码求和运算为
111101
+110110
110011
故两个数之和为负数,其原码为101101,负数的绝对值为(01101)2(即(13)10)。
【答案解析】
【正确答案】-1101的原码为101101,补码为110011;
-1011的原码为1010111,补码为110101,
110011
+110101
101000
故两个数之和为负数,该负数的原码为111000,其绝对值为(11000)2(即(24)10)。
【答案解析】