第二章 习题解答
1.设机器数的字长8位(含1位符号位),分别写出下列各二进制数的原码、补码和 反码:0,-0,0.1000,-0.1000,0.1111,-0.1111,1101,-1101。 解:
真值 O -O 0.1OOO -O.1OOO O.1111 -O.1111 110l -110l
原码 OOOOOOO0 1OOOOOOO O.1OOOOOO l.1OOOOOO O.1111000 1.1111000 00001101 10001101 补码 OOOOOOO0 OOOOOOO0 O.1OOOOOO 1.1OOOOOO O.1111000 l.0001000 00001101 11110011 反码 OOOOOOO0 11111111 O.1OOOOOO 1.0111111 O.1111000 1.0000111 00001101 11110010 2.写出下列各数的原码、补码和反码:7/16,4/16,1/16,±0,-7/16,-4/16,-1/16。 解:
-4
7/16=7*2=0.0111
-4
4/16=4*2=0.0100
-4
1/16=1*2=0.0001
真值 原码 补码 反码
7/16 0.0111 0.0111 0.0111 4/16 0.0100 0.0100 0.0100 1/16 0.0001 0.0001 0.0001 +0 O.0OOO O.0OOO O.0OOO -0 1.0OOO O.0OOO 1.1111 -1/16 1.0OO1 1.1111 1.1110 -4/16 1.0100 1.1100 1.1011 -7/16 1.0111 1.1001 1.1000
3.已知下列数的原码表示,分别写出它们的补码表示:[X1]原=O.10100,[X2]原=l.10111。 解:[X1]补=0.10100,[X2]补=1.01001。
4.已知下列数的补码表示,分别写出它们的真值:[X1]补=O.10100,[X2]补=1.10111。 解: X1=O.10100, X2=-0.01001。
5.设一个二进制小数X≥0,表示成X=0.a1a2a3a4a5a6,其中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的代码为:
0.100001~0.111111。
-
a1=1,a2+a3+a4+a5+a6=1。
(2) X≥1/8的代码为:
0.001001~0.111111(1/8~63/64)
a1+a2=0, a3=1或a1=0,a2=1,或a2=1
(3)1/4≥X>1/16的代码为:
0.000101~0.01000(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.a1a2a3a4a5a6
(1)若要X>-1/2,a1~a6要满足什么条件? (2)若要-1/8≥X≥-1/4,a1~a6要满足什么条件?
解:(1) X>-1/2的代码为:
1.000001~1.011111(-1/64~-31/64)。 a1=0,a2+a3+a4+a5+a6=1。
(2) -1/8≥X≥-1/4的代码为:
1.001000~1.01000(-1/8~-1/4)
a1+a2 =0, a3=1或a2=1,a1+a3+a4+a5+a6=0
7.若上题中[X]原改为[X]补,结果如何? 解:
(1) X>-1/2的代码为:
1.100001~1.111111(-31/64~-1/64)。 a1=1,a2+a3+a4+a5+a6=1。
(2) -1/8≥X≥-1/4的代码为:
1.110000~1.111000(-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的表示形式。
解:
欢迎下载
2
-
补码 反码
n n
模数 Mod2Mod(2-1)
n-1n-1
最大的正数 2-1 2-1
n-1 n-1
最负的数 -2 -(2-1)
n-1 n-1
符号位的权 2 2 -1的表示形式 11111111 11111110
O的表示形式 00000000 00000000(11111111)
9.某机字长16位,问在下列几种情况下所能表示数值的范围:
(1)无符号整数
(2)用原码表示定点小数; (3)用补码表示定点小数; (4)用原码表示定点整数 (5) 用补码表示定点整数。
16
解:(1) 0≤X≤(2-1)
-15-15
(2) -(1-2)≤X≤(1-2)
-15
(3) -1≤X≤ (1-2)
1515
(4) -(2-1)≤X≤(2-1)
1515
(5) -2≤X≤(2-1) 10.某机字长32位,试分别写出无符号整数和带符号整数(补码)的表示范围(用十进制数表示)。
32
解:无符号整数:O≤X≤(2-1)。
3131
补码: -2≤X≤(2-1)。
11.某浮点数字长12位,其中阶符1位,阶码数值3位,数符1位,尾数数值7位,阶码以2为底,阶码和尾数均用补码表示。它所能表示的最大正数是多少?最小规格化正数是多少?绝对值最大的负数是多少?
解:
-77
最大正数=(1-2)×2=127
-1-8-9
最小规格化正数=2×2=2=1/512
7
绝对值最大的负数-1×2=-128。
12.某浮点数字长16位,其中阶码部分6位(含1位阶符),移码表示,以2为底;尾数部分10位(含1位数符,位于尾数最高位),补码表示,规格化。分别写出下列各题的二进制代码与十进制真值。 (1)非零最小正数; (2)最大正数;
(3)绝对值最小负数; (4)绝对值最大负数。
-1-32-33
解:(1)非零最小正数: 000000,0,100000000;2×2=2
-931
(2)最大正数: 111111,0,111111111;(1-2)×2
-1-9-32
(3)绝对值最小负数:000000,1,011111111;-(2+2)×2
31
(4)绝对值最大负数:111111,1,000000000;-2。 13.一浮点数,其阶码部分为p位,尾数部分为q位,各包含1位符号位,均用补码表示;尾数基数r=2,该浮点数格式所能表示数的上限、下限及非零的最小正数是多少?写出表达式。
欢迎下载
3