计算机组成原理课后答案(白中英主编_第五版_立体化教材)_2

第二章

1.(1)???35???100011)

[??35]原 10100011

[??35]补( 11011100 2

[??35]反 ??11011101 (2)

??

[127]原=01111111

??[127]反=01111111 [127]补=01111111

(3)???127???1111111)

[??127]原 11111111

[??127]补( 10000001 2

[??127]反 ??10000000

(4)???1???00000001??)

[??1]原 10000001 ??

[??1]补( 11111111 2

[??1]反 11111110 ??

2.[x]补 = a0. a1a2…a6

??

解法一、

(1) 若 a0 = 0, 则 x > 0, 也满足 x > -0.5

此时 a1→a6 可任意

??

2) 若 a0 = 1, 则 x <= 0, 要满足 x > -0.5, 需 a1 = 1 (

即 a0 = 1, a1 = 1, a2→a6 有一个不为 0

解法二、

-0.5 = -0.1(2) = -0.100000 = 1, 100000

(1) 若 x >= 0, 则 a0 = 0, a1→a6 任意即可;

(2) [x]补

= x = a0. a1a2…a6

(2) 若 x < 0, 则 x > -0.5

只需-x < 0.5, -x > 0

[x]补 = -x, [0.5]补 = 01000000 即[-x]补 < 01000000

a0 * a1 * a 2???a6?? 1?? 01000000

a0 * a1 * a 2???a6?? 00111111

a0 a1a 2???a6?? 11000000

即 a0a1 = 11, a2→a6 不全为 0 或至少有一个为 1(但不是“其余取 0”)

3.字长 32 位浮点数,阶码 8 位,用移码表示,尾数 23 位,用补码表示,基为 2

Es

E1→E8

Ms

M21

M0

(1) 最大的数的二进制表示

E = 11111111

Ms = 0, M = 11…1(全 1)

1 11111111 01111111111111111111111

(2) 最小的二进制数

E = 11111111

Ms = 1, M = 00…0(全 0) 1 11111111 1000000000000000000000

(3) 规格化范围

正最大

E = 11…1, M = 11…1, Ms = 0

8 个

22 个

7

即: 22 ??1 ??22

正最小

E = 00…0, M = 100…0, Ms = 0

8 个

21 个

7 ??1

负最大

E = 00…0, M = 011…1, Ms = 1

8 个 21 个

7???????1 ??22

) 负最小

E = 11…1, M = 00…0, Ms =1

8 个

22 个

即: 2??2 ? (1???? ( 2 ) ??1) 规格化所表示的范围用集合表示为:

7 ??1

7

, 22 ??1 ??22 7 7?????????????22

即: 2??2?? 2

(最接近 0 的负数)即:???2??2?? (2?? 2 [ 2??2?? 2 ? (1??? 2 ) ] [ 22???1?? (??1) ,???2??2?? (2??1?? 2 ) ]

4

计算机组成原理第五版习题答案

4.在 IEEE754 标准中,一个规格化的 32 位浮点数 x 的真值表示为:

X=

(??1)s ×(1.M)× 2 E???127 (1)27/64=0.011011=1.1011× 2 ??2

E= -2+127 = 125= 0111 1101 S= 0 M= 1011 0000 0000 0000 0000 000

最后表示为:0 01111101 10110000000000000000000 (2)-27/64=-0.011011=1.1011× 2 ??2

E= -2+127 = 125= 0111 1101 S= 1 M= 1011 0000 0000 0000 0000 000

最后表示为:1 01111101 10110000000000000000000 5.(1)用变形补码进行计算:

[x]补=00 11011 [y]补=00 00011 [x]补 =

00 11011 [y]补 = + 00 00011 [x+y]补= 00 11110

结果没有溢出,x+y=11110

(2) [x]补=00 11011 [y]补=11 01011

[x]补 = 00 11011 [y]补 = + 11 01011 [x+y]补=

00 00110

结果没有溢出,x+y=00110

(3)[x]补=11 01010 [y]补=11 111111

[x]补 =

00 01010 [y]补 = + 00 11111 [x+y]补=

11 01001

结果没有溢出,x+y=?10111

6.[x-y]补=[x]补+[-y]补 (1)[x]补=00 11011

[-y]补=00 11111

[x]补 = 00 11011

[-y]补 = + 00 11111 [x-y]补= 01 11010 结果有正溢出,x?y=11010

(2)[x]补=00 10111

[x]补 = 00 10111

[-y]补=11 00101

[-y]补 = + 11 00101 [x-y]补= 11 11100 结果没有溢出,x?y=?00100

5

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4