第 2 周作业(理论2)
讲义第一章7、9、10
7. 在 $p=10$,$t=4$,$L=U=5$ 的舍入近似的假想计算机上,将下列实数写成相应的规格化浮点数:(1) $-315.37$;(2) $0.0074$;(3) $25\dfrac{2}{3}$;(4) $52\dfrac{1}{3}$.
9. 假设在 $p=10$,$t=4$,$L=U=5$ 的采用舍入近似的假想计算机上作浮点运算,设 $x=0.6436\times 10^{-4}$,$y=0.8321 \times 10^{-3}$,求 $x\oplus y$ 和 $x\ominus y$.
10. 设字长 $t=8$,以及
\[\begin{aligned} x&=0.32282167\times 10^{-4}, \\ y&=0.45367549\times 10^2, \\ z&=-0.45368822\times 10^2. \end{aligned}\]求:$fl(fl(x+y)+z)$,$fl(x+fl(y+z))$ 和 $x+y+z$.
解答
第7题解答
(1) $-0.3154\times 10^3$
(2) $0.7400\times 10^{-2}$
(3) $0.2567\times 10^2$
(4) $0.5233\times 10^2$
第9题解答
$x\oplus y=fl(0.06436\times 10^{-3} + 0.8321\times 10^{-3})=0.8965\times 10^{-3}$.
$x\ominus y=fl(0.06436\times 10^{-3}-0.8321\times 10^{-3})=-0.7677\times 10^{-3}$.
第10题解答
$fl(x+y)=fl(0.00000032282167\times 10^{2}+0.45367549\times 10^2)=0.45367581\times 10^2$,
$fl(fl(x+y)+z)=fl(0.45367581\times 10^2-0.45368822\times 10^2)=-0.12410000\times 10^{-2}$.
$fl(y+z)=fl(0.45367549\times 10^2-0.45368822\times 10^2)=-0.1273\times 10^{-2}$.
$fl(x+fl(y+z))=fl(0.0032282167\times 10^{-2}-0.1273\times 10^{-2})=-0.12407178\times 10^{-2}$.
精确值 $x+y+z=-0.1240717833\times 10^{-2}$.
本题就是要让同学们体会运算顺序对结果的影响.可以看到,第一种计算方法误差比第二种计算方法误差更大.
在多个数字相加的任务中,一般先计算数量级接近的数字,而不要先计算数量级差异太大的数字,减少舍入误差对计算精度的影响.