1、第二章习题参考答案5版第二章运算方法和运算器习题参考答案1.写出下列各数的原码、 反码、补码、移码表示(用 8 位二进制数) 。 其中 MSB 是最高位(又是符号位) LSB 是最低位。如果是小数,小 数点在 MSB 之后;如果是整数,小数点在 LSB 之后。(1)-35 (2) 128 (3) -127 ( 4) -1解:(1)先把十进制数 -35/64 写成二进制小数: (注意位数为 8 位 ) x=(-35) 10=(-100011) 2x 原=10100011 x 反=11011100 x 补=11011101(2)128写成二进制小数:x=( 128)10=(10000000)2x原
2、=10000000 x 反=10000000 x补=10000000(3)先把十进制数 -127 写成二进制小数:x=(-127)10=(-1111111)2x原=11111111 x 反=10000000 x补=10000001(4)令 Y=-1=-0000001BY 原=10000001 Y 反=11111110 Y 补=111111112.设X 补= a7,a6,a5a0 , 其中 ai 取 0或 1,若要 x0.5,求 a0, a1, a2, ,a6 的取值。解:若 a7= 0,则: x0, 所以: a1= 0, a2,a6 任意;若 a7= 1,则: a1= 1, a2, a6 不全
3、为 03.有一个字长为 32 位的浮点数,符号位 1 位,阶码 8 位,用移码表 示;尾数 23 位(包括 1 位尾符)用补码表示,基数 R=2 。请写出:(1)最大数的二进制表示;(2)最小数的二进制表示;(3)规格化数所能表示的数的范围;解:(1)1111111110 111111*1111112)11111111110000000000000000000003)1111111110111111111111111111111 01111111110000000000000000000004)00000000000000000000000000000001 000000000 111111*
4、111111114.将下列十进制数表示成浮点规格化数,阶码 3 位,用补码表示; 尾数 9 位,用补码表示。( 1) 27/64( 2) -27/64解:( 1) x=27/64=11011B 2-6=0.011011B=1.1011B 2-2 S=0 M=0.10110000000000000000000 E=e+127=-2+127=125=01111101x浮= 0011 1110 1 101 1000 0000 0000 0000 0000 =(3ED80000) 16(2) x=-27/64= -11011B 2-6= -0.011011B= -1.1011B 2-2S=1 M=0.
5、10110000000000000000000E=e+127=-2+127=125=01111101x浮= 1011 1110 1 101 1000 0000 0000 0000 0000=(BED80000) 16浮点规格化数 :x浮= 1111 10010100005.已知 X 和 Y, 用变形补码计算 X+Y, 同时指出运算结果是否溢出( 1)X=11011 Y=00011解: 先写出 x 和 y 的变形补码再计算它们的和x补=00 11011 y补=00 00011x+y 补=x 补+y 补=00 11011+00 00011= 00 11110无溢出。(2)X= 11011 Y= -
6、10101解: 先写出 x 和 y 的变形补码再计算它们的和x 补=00 11011 y 补=11 01011x+y 补=x 补+y 补=00 11011+11 01011= 00 00110 x+y= 00 00110B 无溢出。(3)X= -10110 Y= -00001解: 先写出 x 和 y 的变形补码再计算它们的和x补=11 01010 y补=11 11111x+y 补=x 补+y 补=11.01010+11.11111= 11 01001 x+y= - 10111 无溢出6.已知 X 和 Y, 用变形补码计算 X-Y, 同时指出运算结果是否溢出。(1) X=11011 Y= -11
7、111解:先写出 x 和 y 的变形补码,再计算它们的差x补=00 11011 y补=11 00001 -y补=00 11111x-y 补 =x 补+-y 补=00 11011+00 11111=01 11010 运算结果双符号不相等 为正溢出(2) X=10111 Y=11011解:先写出 x 和 y 的变形补码,再计算它们的差x补=00 10111 y补=00 11011 -y 补=11 00101x-y 补=00 10111+11 00101=11 11100 x-y= -1 无溢出(3) X=0.11011 Y=-10011解:先写出 x 和 y 的变形补码,再计算它们的差x补=00
8、11011 y补=11 01101 -y 补=00 10011x-y补=x补+-y补=00 11011+00 10011=01 01110 运算结果双符号为 01 不相等 为正溢出7.用原码阵列乘法器、补码阵列乘法器分别计算 XY。(1)X= 11011 Y= -11111( 2)X=-11111 Y=-11011解:( 1)用原码阵列乘法器计算 x,y 都取绝对值,符号单独处理X 原=0.11011 Y 原=1.11111积的符号为 X f Yf 0 1 11 1 0 1 1 1 1 1 1 11 1 0 1 11 1 0 1 11 1 0 1 11 1 0 1 11 1 0 1 10.1
9、1 0 1 0 0 0 1 0 1X Y 原 =1.1101000101XY = - 0.1101000101(2)X=-11111Y=-11011解:用原码阵列乘法器计算X 原=1 11111 Y 原=1 11011积的符号为X f Yf 1 1 01 1 1 1 1 1 1 0 1 11 1 1 1 11 1 1 1 10 0 0 0 01 1 1 1 11 1 1 1 10.1 1 0 1 0 0 0 1 0 1X Y原 = 0.1101000101XY= 0.11010001018 用原码阵列除法器计算 XY。(1)X=0.11000 Y= -0.11111( 2)X=-0.01011
10、 Y= 0.11001解: (1)x 原=x补=0.11000 |y|补=0.11111- y 补=1.00001被除数 X-|y|补0.11000000001.00001余数为负+|y|补1.1100100.011111q0=0余数为正0.0100010q1=1-|y|补1.1100001余数为正0.00000110q2=1-|y|补1.11100001余数为负1.111001110q3=0+|y|0. 000011111余数为负1. 1111011010q4=0+|y|0. 00000111111. 1111111001q5=0商 |q|=q0.q1q2q3q4q5=0.11000X f
11、Y f 0 1 1 余数 r=0.00000110=0.112-101 x/y 原=1.11000( 2)X=-0.01011 Y= 0.11001解: (1)|x| 原=|x| 补=0.01011 |y|补=0.11001 -|y| 补=1.00111 被除数 X .010*-|y|补1.00111余数为负1.100100q0=0+|y|补0.011001余数为负1.1111010q1=0|y|补0.0011001余数为正0.00100110q2=1-|y|补1.11100111余数为正0.000011010q3=1+-|y|1.111100111余数为负0. 0000000010q4=1+
12、|y|1. 11111001111. 1111101001q5=0|q|=q0.q1q2q3q4q5=0.01110r=0.000000001=0.121000X f Yf 1 0 1x/y 原=1.011109.设阶为 3 位(不包括阶符位 ), 尾数为 6 位 (不包括数符位 ), 阶码、 尾数均用补码表示 , 完成下列取值的 X+Y , X-Y 运算: (1)x=2-0110.100101 y=2 -010(-0.011110)解:1对阶:因 x 阶码小,所以调整 x 指数向 y 看齐x=2 -0100.01001012尾数相加减x+y=2 -010(0.0100101-0.011110
13、)=2-010 (-0.0010111)x-y=2 -0100.11000013规格化处理x+y=2 -010 (-0.0010111)=2 -101 (-1.011100)x-y=2 -0100.1100001=2-0111.1000014溢出检查-126 x+y 的指数 =-5,x-y 的指数 =-3 127没有溢出(2) x=2-101(-0.010110) y=2 -100(0.010110)解:1对阶:因 x 阶码小,所以调整 x 指数向 y 看齐 x=2-100(-0.0010110)2尾数相加减x+y=2 -100(-0.0010110+0.010110)=2-100 (0.00
14、1011)x-y=2 -100(-0.100001)3规格化处理 X+y=2 -111 (1.011000) X-y=2 -101(-1.000010)4溢出检查-126 x+y 的指数=-7,x-y 的指数 =-5 127 没有溢出10.设数的阶码为 3 位,尾数为 6 位 ,用浮点运算方法 ,计算下列各式 3 13 4 9(1) (23 16 ) 2 4 ( 16 )解: x=20101.10100, y=2 011(-1.00100)1阶码求和ex+ey =010+011=101 (+5)移码表示为 Ex+Ey=127+5=1322尾数相乘 ,可以采用原码阵列乘法实现(用绝对值)Mx My =1.10100 1.00100=1.11010100003规格化处理
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1