计算机组成原理第二章例题解析(下)

定点除法运算
并行除法器
不恢复余数的阵列除法器
在这里插入图片描述
[ x ] = 0.101001 [x]_补=0.101001 [ y ] = 0.111 [y]_补=0.111 , [ y ] = 1.001 [-y]_补=1.001

  1. 做法1:除数不断右移
    在这里插入图片描述
    注意:
    1)加 [ y ] [y]_补 还是加 [ y ] [-y]_补 取决于每次求和之后的符号位,若符号位是0,则加 [ y ] [-y]_补 ,反之亦然。
    2)除数不断右移,符号位一直保持不变
    3)商读取顺序是 q 4 q 3 q 2 q 1 q_4q_3q_2q_1
    4)如果除数与被除数的符号不相同,在最后补上负号即可
  2. 被除数和每次求和之后的结果左移
    在这里插入图片描述
    在此过程中我们一共将被除数移动了三次,故余数 0.110000 0.110000 小数点后同时加上三个0,得到:商: q 4 q 3 q 2 q 1 = 0.101 q_4q_3q_2q_1=0.101 ;余数: 0.000110 0.000110
    注意:
    1)被除数左移过程中右边一直补0
    2)最后得到的余数,移动了几次就要补几个0

逻辑运算

  1. 逻辑非运算
    在这里插入图片描述
    x 1 ˉ = 10110100 \bar{x_1}=10110100 x 2 ˉ = 00001111 \bar{x_2}=00001111

  2. 逻辑加运算(或运算)
    在这里插入图片描述
    x + y = 10111011 x+y=10111011

  3. 逻辑乘运算(与运算)
    在这里插入图片描述
    x + y = 10110001 x+y=10110001

  4. 逻辑异运算
    在这里插入图片描述
    x y = 01100111 x\bigoplus y=01100111

浮点运算方法和浮点运算器
加减法
浮点数 x x y y ,分别为:
x = 2 E x × M x x=2^{E_x}\times M_x
y = 2 E y × M y y=2^{E_y}\times M_y
两浮点数的加减法运算为:
z = x ± y = ( M x 2 E x E y ± M y ) 2 E y z=x \pm y=(M_x2^{E_x-E_y} \pm M_y)2^{E_y}
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
x = 0. 5 10 = 0. 1 2 = 0.1 × 2 0 x=-0.5_{10}=0.1_2=0.1\times 2^0
y = = 0.437 5 10 = 0.011 1 2 = 0.011 1 2 × 2 0 y==0.4375_{10}=-0.0111_2=-0.0111_2\times 2^0
第一步:对阶:
阶数相同,略过
第二步:尾数相加:
x + y = 0.1 × 2 0 0.0111 × 2 0 = 0.0001 × 2 0 x+y=0.1\times 2^0-0.0111\times 2^0 =0.0001\times 2^0
第三步:规格化:
x + y = 0.0001 × 2 0 = 1.0000 × 2 4 x+y=0.0001\times2^0=1.0000\times2^{-4}
第四步:
检查上溢或下溢:
由于指数采用移码,移码范围在-126 ~127, 127 4 126 127\geqslant-4\geqslant126 ,故满足范围无溢出
第五步:舍入操作:
由题有,有四位尾数,而我们已经满足了该条件了;
所以,综上, x + y = 1.0000 × 2 4 x+y=1.0000\times2^{-4}
在这里插入图片描述
乘除法

  1. 乘法 x × y = ( M x × M y ) 2 E x + E y x\times y=(M_x\times M_y)2^{E_x+E_y}
  2. 除法 x ÷ y = ( M x ÷ M y ) 2 E x E y x\div y=(M_x\div M_y)2^{E_x-E_y}
  3. 乘法流程图
    在这里插入图片描述在这里插入图片描述
    E x = 2 , E y = 3 , M x = 0.4 , M y = 0.2 E_x=2,E_y=3,M_x=0.4,M_y=0.2
    x × y = 1 0 E x + E y × ( M x × M y ) = 1 0 5 × 0.08 = 8000 x\times y=10^{E_x+E_y}\times (M_x\times M_y)=10^{5}\times 0.08=8000
    x ÷ y = 1 0 E x E y × ( M x ÷ M y ) = 1 0 1 × 2 x \div y=10^{E_x-E_y}\times(M_x\div M_y)=10^{-1}\times2
发布了6 篇原创文章 · 获赞 0 · 访问量 66

猜你喜欢

转载自blog.csdn.net/weixin_43984457/article/details/105161632