問答題

計算兩個正整數(shù)n和m的乘積有一個很有名的算法稱為俄式乘法,其思想是利用了一個規(guī)模是n的解和一個規(guī)模是n/2的解之間的關(guān)系:n×m=n/2×2m(當(dāng)n是偶數(shù))或:n×m=(n-1)/2×2m+m(當(dāng)n是奇數(shù)),并以1×m=m作為算法結(jié)束的條件。例如,圖示給出了利用俄式乘法計算50×65的例子。據(jù)說十九世紀(jì)的俄國農(nóng)夫使用該算法并因此得名,這個算法也使得乘法的硬件實現(xiàn)速度非常快,因為只使用移位就可以完成二進(jìn)制數(shù)的折半和加倍。請設(shè)計算法實現(xiàn)俄式乘法。


您可能感興趣的試卷