第二章 习题解答
1.设机器数的字长8位(含1位符号位),分别写出下列各二进制数的原码、补码和 反码:0,-0,,,,,1101,-1101。 解: 真值 O * 原码 OOOOOOO0 1OOOOOOO ` 补码 OOOOOOO0 OOOOOOO0 ~ 反码 OOOOOOO0 00001101 . -O 110l -110l
00001101 00001101 2.写出下列各数的原码、补码和反码:7/16,4/16,1/16,±0,-7/16,-4/16,-1/16。 解:
7/16=7*2-4= 4/16=4*2-4= 1/16=1*2-4=
真值 原码 补码 反码
7/16
《
4/16 1/16 +0 -0 -1/16 -4/16 -7/16
3.已知下列数的原码表示,分别写出它们的补码表示:[X1]原=,[X2]原=。 解:[X1]补=,[X2]补=。 \
4.已知下列数的补码表示,分别写出它们的真值:[X1]补=,[X2]补=。 解: X1=, X2=。
5.设一个二进制小数X≥0,表示成X=,其中a1~a6取“1”或“O”: (1)若要X>1/2,a1~a6要满足什么条件 (2)若要X≥1/8,a1~a6要满足什么条件 (3)若要1/4≥X>1/16,a1~a6要满足什么条件
解:(1) X>1/2的代码为:
~。
a1=1,a2+a3+a4+a5+a6=1。 (2) X≥1/8的代码为:
;
~(1/8~63/64)
a1+a2=0, a3=1或a1=0,a2=1,或a2=1
(3)1/4≥X>1/16的代码为:
~(5/64~1/4)
a1+a2+a3 =0, a4=1,a5+a6=1 或a1+a2=0,a3=1 或a2=1,a1+a3+a4+a5+a6=0
6.设[X]原=
(1)若要X>-1/2,a1~a6要满足什么条件 (2)若要-1/8≥X≥-1/4,a1~a6要满足什么条件 解:(1) X>-1/2的代码为:
~
~(-1/64~-31/64)。
a1=0,a2+a3+a4+a5+a6=1。 (2) -1/8≥X≥-1/4的代码为:
~(-1/8~-1/4)
a1+a2 =0, a3=1或a2=1,a1+a3+a4+a5+a6=0
7.若上题中[X]原改为[X]补,结果如何 解:
(1) X>-1/2的代码为:
~(-31/64~-1/64)。
、
a1=1,a2+a3+a4+a5+a6=1。 (2) -1/8≥X≥-1/4的代码为:
~(-1/4~-1/8)
a1*a2=1, a3=0或a1*a2*a3=1, a4+a5+a6=0
8.一个n位字长的二进制定点整数,其中1位为符号位,分别写出在补码和反码两种情况下:
(1)模数;(2)最大的正数;
(3)最负的数;(4)符号位的权;
(5)-1的表示形式;(6)O的表示形式。
…
解:
补码 反码
模数 Mod2n Mod( 2n-1) 最大的正数 2n-1-1 2n-1-1 最负的数 -2n-1 -(2n-1-1) 符号位的权 2n-1 2n-1 -1的表示形式
O的表示形式 00000000 00000000()
9.某机字长16位,问在下列几种情况下所能表示数值的范围: 、
(1)无符号整数
(2)用原码表示定点小数; (3)用补码表示定点小数; (4)用原码表示定点整数 (5) 用补码表示定点整数。 解:(1) 0≤X≤(216-1)
(2) -(1-2-15)≤X≤(1-2-15) (3) -1≤X≤ (1-2-15) (4) -(215-1)≤X≤(215-1) (5) -215≤X≤(215-1) /
10.某机字长32位,试分别写出无符号整数和带符号整数(补码)的表示范围(用十进制数表示)。
解:无符号整数:O≤X≤(232-1)。 补码: -231≤X≤(231-1)。
11.某浮点数字长12位,其中阶符1位,阶码数值3位,数符1位,尾数数值7位,阶码以2为底,阶码和尾数均用补码表示。它所能表示的最大正数是多少最小规格化正数是多少绝对值最大的负数是多少
解:
最大正数=(1-2-7)×27=127
最小规格化正数=2-1×2-8=2-9=1/512 绝对值最大的负数-1×27=-128。
12.某浮点数字长16位,其中阶码部分6位(含1位阶符),移码表示,以2为底;尾数部分10位(含1位数符,位于尾数最高位),补码表示,规格化。分别写出下列各题的二进制代码与十进制真值。 (1)非零最小正数; !
(2)最大正数;
(3)绝对值最小负数;
(4)绝对值最大负数。
解:(1)非零最小正数: 000000,0,0;2-1×2-32=2-33 (2)最大正数: 111111,0,1;(1-2-9)×231 (3)绝对值最小负数:000000,1,0;-(2-1+2-9)×2-32 (4)绝对值最大负数:111111,1,000000000;-231。
13.一浮点数,其阶码部分为p位,尾数部分为q位,各包含1位符号位,均用补码表示;尾数基数r=2,该浮点数格式所能表示数的上限、下限及非零的最小正数是多少写出表达式。
解:上限(最大正数)=(1-2-(q-1))×(2)22(p-1)-1 下限(绝对值最大负数)-1×(2)22(p-1)-1
~
最小正数=2-(q-1)×(2)2-(p-1)
最小规格化正数=2-1×(2){-2 (p-1)}。
14.若上题尾数基数r=16,按上述要求写出表达式。 解:上限(最大正数)=(1-2-(q-1))×(16)22(p-1)-1 下限(绝对值最大负数)-1×(16)22(p-1)-1
最小正数=2-(q-1)×(16)2-(p-1)
最小规格化正数=16-1×(16){-2 (p-1)}。
15.某浮点数字长32位,格式如下。其中阶码部分8位,以2为底,补码表示, 尾数部分一共24位(含1位数符),补码表示。现有一浮点代码为(8C5A3E00)16,试写出它所表示的十进制真值。 》
O 7 8 9 31
阶码
数符 尾数 解:(8C5A3EOO)16=1000 1100 0101 1010 0011 1110 0000 0000B 符号位=0
阶码=0000=1100=(12)10 尾数=00
×212=(.11)2=10
,
16.试将。用IEEE短浮点数格式表示出来。
解: =×2-1
符号位=1。
阶码:127-1=126。
1,01111110,0000000000。 结果=BF500000H。
17.将下列十进制数转换为IEEE短浮点数: ,
(1); (2)624; :
(3); (4)+; (5)。
解:
(1)10=()2=×24 符号位=O
阶码=127+4=131 0,,0000000000 结果=41E60000H 。
(2) (624)10=(00)2=×29
符号位=O
阶码=127+9=136 0,,0000000000。 结果=441C0000H。
(3) -10=-()2=×2-1 符号位=1
阶码=127—1=126。
1,01111110,0000000000。 结果=BF200000H。 :
(4)+O.O。
结果=00000000H。 (5) -10=-()2=×29
符号位=1
阶码=127+9=136。 1,,0000000000。 结果=C47A2000H。
18.将下列IEEE短浮点数转换为十进制数:
(1) 00000000 00000000:
(2)00111111 00010000 00000000 00000000: }
(3)01000011 00000000 00000000;
(4)01000000 00000000 00000000 00000000; (5)01000001 00100000 00000000 00000000; (6)00000000 00000000 00000000 00000000。
解:
(1)1,,0000000000:
符号位=1
阶码=129-127=2 ×22==
所以结果=-7.5。 ^
相关推荐: