8*5可化為 1000*101,可表示為8的二進制數左移2位加不左移的數,既得101000,十進制的40。
將數化為二進制數,被乘數乘2便是左移壹位,除二就是右移壹位,2在二進制中為 10,和十進制乘除壹樣。
被乘數補碼*乘數補碼=兩數積的補碼。單獨算出被乘數的相反數的補碼,同時乘數補碼往右擴壹位補0(乘數補碼處理值),積的符號位與其余位必須壹同計算。兩數補碼相乘拆分為多個加法運算。
擴展資料:
原碼不能直接參加運算,可能會出錯。例如數學上,1+(-1)=0,而在二進制中
原碼
00000001+10000001=10000010,換算成十進制為-2。顯然出錯了。
所以原碼的符號位不能直接參與運算,必須和其他位分開,這就增加了硬件的開銷和復雜性
具體定義還分小數和整數:
小數原碼的定義
[X] =
X( 0≤X <1 )
1- X (-1 < X ≤ 0)
例如: X=+0.1011 , [X]原= 0.1011
X=-0.1011 [X]原= 1.1011
百度百科-原碼