运算方法和运算器
. 写出下列各数的原码、反码、补码、移码表示(用位二进制数)。其中MSB是最高位(又是符号位)LSB是最低位。如果是小数,小数点在MSB之后;如果是整数,小数点在LSB之后。
() - () () - ( ) -
解:
()先把十进制数-/写成二进制小数:(注意位数为位)
x=(-)=(-)
[x]原= [x]反= [x]补=
() 写成二进制小数:
x=()=()
[x]原= [x]反= [x]补=
() 先把十进制数-写成二进制小数:
x=(-)=(-)
[x]原= [x]反= [x]补=
() 令Y=-=-B
[Y]原= [Y]反= [Y]补=
. 设[X]补= a,a,a…a , 其中ai取或,若要x>-.,求a,a,a,…,a 的取值。
解:若a= ,则:x>, 所以: a= , a,…,a任意;
若a= ,则:a= , a,…,a 不全为。
. 有一个字长为位的浮点数,符号位位,阶码位,用移码表示;尾数位(包括位尾符)用补码表示,基数R=。请写出:
() 最大数的二进制表示;
() 最小数的二进制表示;
() 规格化数所能表示的数的范围;
解: ()
()
()
~
()
~
. 将下列十进制数表示成浮点规格化数,阶码位,用补码表示;尾数位,用补码表示。
() /
() -/
解:()x=/=B×-=.B=.B×-
S= M=.
E=e+=-+==
[x]浮=
=(ED)
() x=-/= -B×-= -.B= -.B×-
S= M=.
E=e+=-+==
[x]浮=
=(BED)
浮点规格化数:
[x]浮=
. 已知X和Y, 用变形补码计算X+Y, 同时指出运算结果是否溢出。
()X= Y=
解: 先写出x和y的变形补码再计算它们的和
[x]补= [y]补=
[x+y]补=[x]补+[y]补= + =
无溢出。
()X= Y= -
解: 先写出x和y的变形补码再计算它们的和
[x]补= [y]补=
[x+y]补=[x]补+[y]补= + =
∴ x+y= B 无溢出。
()X= - Y= -
解: 先写出x和y的变形补码再计算它们的和
[x]补= [y]补=
[x+y]
补=[x]补+[y]补=.+.=
∴ x+y= - 无溢出
. 已知X和Y, 用变形补码计算X-Y, 同时指出运算结果是否溢出。
() X= Y= -
解:先写出x和y的变形补码,再计算它们的差
[x]补= [y]补= [-y]
第二章习題参考答案(5版) 来自淘豆网www.taodocs.com转载请标明出处.