第6章 计算机的运算方法
2. 已知X=0.a1a2a3a4a5a6(ai为0或1),讨论下列几种情况时ai各取何值。 (1)X (2)X (3)
1
2
1 8
11
X
416
1
,只要a1=1,a2~a6不全为0即可。 2
解: (1)若要X
(2)若要X (3)若要
1
,只要a1~a3不全为0即可。 8
11 X ,只要a1=0,a2可任取0或1; 416
当a2=0时,若a3=0,则必须a4=1,且a5、a6不全为0;
若a3=1,则a4~a6可任取0或1;
当a2=1时, a3~a6均取0。
3. 设x为整数,[x]补=1,x1x2x3x4x5,若要求 x < -16,试问 x1~x5 应取何值? 解:若要x < -16,需 x1=0,x2~x5 任意。(注:负数绝对值大的补码码值反而小。)
4. 设机器数字长为8位(含1位符号位在内),写出对应下列各真值的原码、补码和反码。 -13/64,29/128,100,-87 解:真值与不同机器码对应关系如下:
5. 已知[x]补,求[x]原和x。
[x1]补=1.1100; [x2]补=1.1001; [x3]补=0.1110; [x4]补=1.0000;
[x5]补=1,0101; [x6]补=1,1100; [x7]补=0,0111; [x8]补=1,0000; 解:[x]补与[x]原、x的对应关系如下:
6.
设机器数字长为8位(含1位符号位在内),分整数和小数两种情况讨论真值x为何值时,[x]补=[x]原成立。 解:当x为小数时,若x 0,则 [x]补=[x]原成立;
若x < 0,当x= -1/2时,[x]补=[x]原=1.100 0000,则 [x]补=[x]原成立。
当x为整数时,若x 0,则 [x]补=[x]原成立;
若x< 0,当x= -64时,[x]补=[x]原=1,100 0000,则 [x]补=[x]原成立。
7.
设x为真值,x*为绝对值,说明[-x*]补=[-x]补能否成立。
(1)当x<0时,由于[-x*]补是一个负值,而[-x]补是一个正值,因此此时[-x*]补=[-x]补不成立; (2)当x 0时,由于-x*=-x,因此此时 [-x*]补=[-x]补的结论成立。 8. 讨论若[x]补>[y]补,是否有x>y?
解:当x为真值,x*为绝对值时,[-x*]补=[-x]补不能成立。原因如下: