计算机科学概论(第11版) 1.6节 问题与练习答案

来源:互联网 发布:中小型企业网络构建 编辑:程序博客网 时间:2024/05/20 22:30

说明:以下答案皆为我自己做的,如有错误,欢迎指正。

1.a.3,  b.15,  c.-4,  d.-6,  e.0,  f.-16


2.a.00000110,  b.11111010,  c.11101111,  d.00001101  e.11111111  f.00000000


3.a.11111111,  b.10101011,  c.00000100,  d.00000010,  e.00000000,  f.10000001


4.a.最大数0111=7,最小数1000= -8 ;b.最大数011111=31,最小数100000= -32;
c.最大数01111111=127,最小数10000000= -128


5.a.  0101  | 5    b.  0011|3    c. 0101|5    d.  1110|-2   e.  1010|-6
     + 0010  | 2      + 0001|1     + 1010|-6      +0011|3      + 1110|-2
 ---------------------------------------------------------------------------------------------------
        0111  | 7       0100|4           1111|-1        0001|1         1000|-8


6.a. 0100|4       b. 0101|5           c.1010|-6         d.1010|-6       e.0111|7
     +0011|3           0110|6              1010|-6             0111|7          0001|1
-------------------------------------------------------------------------------------------------------
       0111|7          1011|-5 (溢出)  0100|4(溢出)  0001|1      1000|-8(溢出)


7. a.   6|0110   b.  3|0011   c.  4|0100   d.  2|0010    e. 1|0001
     -(-1)|0001       -2|1110       -6|1010        4|0100       -5|1011
----------------------------------------------------------------------------------
         7|0111        1|0001        -2|1110        6|0110      -4|1100


8.不会溢出。因为当正数和负数相加时,结果一定在这两个数值之间,所以当原始数值都不溢出的话,其结果值更不会溢出。


9.a.1110-->补码0110-->6;  b.0111-->补码1111-->-1;  c.1000-->补码0000-->0; 
  d.0010-->补码1010-->-6;  e.0000-->补码1000-->-8;  f.1001-->补码0001-->1


10.a.5-->补码0101-->1101;  b.-5-->补码1011-->0011;  c.3-->补码0011-->1011;
  d.0-->补码0000-->1000;  e.7-->补码0111-->1111;  f.-8-->补码1000-->0000


11.都不可以。因为9的二进制为1001,这在补码4位模式中为负数,6的二进制为100,这在3位模式的补码中也为负。它们都不可能以正确的补码表示。而余码与补码的区别在于符号相反,所以它们也不可能以正确的余码表示。


0 0
原创粉丝点击