组成原理(浮点运算)

移位乘法:

    x = 0.1011

  y = 0.0101

  为方便描述,令 x的长度n = 4,计算次数定义为i;

  计算过程:

    A     |    Q

    0.0000    |    0101

  +     0.1011  |    

   ----------------------------------------

    0.1011  |

 >> 1   0.0101  |    1010    (方便描述我们令 Q = 0.01011010)

   +    0.0000  |    

   ----------------------------------------

    0.0101  |    

 >> 1 0.0010  |    1101

   +    0.1011  |        

   -----------------------------------------

    0.1101  |    

 >> 1 0.0110  |    1110

   +    0.0000  |

      ------------------------------------------

    0.0110  |    

 >> 1 0.0010  |    0111

 

所以得出答案0.0010

 

说白了就是

    X* = 0;        i = 0;

       X* = X* >> 1 + X    Q%10 == 1; i < 3;

    X* = X* >> 1 + 0;   Q%10 == 0;  i < 3;

    ans = X* >> 1;     i == 4; 

 

 

浮点加减运算

  X = 27 * 29/32      Y = 25 * 5/8

 

  11101 * 2-5 *27      101 * 2-3 * 25

 = 0.11101 * 27      = 0.101 * 25

 

[X] = 00 111 011101B  [Y] = 00 101 00 01010B

对阶:

  小阶对齐大阶 101+010 = 111;

所以 尾数后移3位所以   [Y] = 00 101 00 00101B

  

  00 11101

  00 00101

---------------------------

  01 00010

 >> 00 10001    =>    00,111

              +     1

            ----------------------

              01, 000

 

所以产生溢出

 

posted @ 2019-10-05 19:42  秦_殇  阅读(503)  评论(0编辑  收藏  举报