1. 程式人生 > >計算機乘法除法原理(原碼)

計算機乘法除法原理(原碼)

          0.11  
     _______
0.1001/0.1001
        10010(後面補0)
        -1011
      ------
        111(餘數)
        1110(後面補0)
        -1011
       --------
             1(餘數)
           
設ri表示第i次運算後所得的餘數,則:
若ri>0,則商1,餘數和商左移1位,再減去除數,即ri+1=2ri-y
若ri<0,則商0,餘數和商左移1位,再加上除數,即ri+1=2ri+y

用85/6來舉例,85/6=1010101/110
a.101(0101)左移1位到第3位都小於110,因此商=000
b.1010(101)左移四位是1010,比110大,商=0001,餘數=1010-110=100(101)
c.餘數100(101)左移一位是1001,比110大,商=00011,餘數=1001-110=11(01)
d.餘數11(01)左移一位是110,等於110,商=000111,餘數=0(1)
e.餘數0(1)左移一位是01,小於110,商=0001110,餘數=01

因此85/6=1010101/110=0001110,即14,餘數為最後的餘數1

http://blog.sina.com.cn/s/blog_ad0672d60101j69f.html