目前共有4篇帖子。
補碼一位乘法——校正法
1樓 巨大八爪鱼 2016-12-12 13:03
對於x*y,其算法規則是:
1.不管x的符號如何,只要y為正,則直接按原碼一位乘法的規則計算,結果不需要校正。注意,當x為負時,絕對不能採用豎式計算,必須老老實實地按原碼一位乘法的步驟分步計算。
2.如果y為負,則把y的符號位看作0(例如把y=1.101看作0.101),然後執行第1步,計算結果需要減去x(符號位對齊)。
2樓 巨大八爪鱼 2016-12-12 13:08
計算時,A、B寄存器必須採用雙符號位。
例如X=-5=11.011,Y=+5=00.101,計算結果等於1.100111=-25
3樓 巨大八爪鱼 2016-12-12 13:10
當X為負時,不能用豎式直接計算,否則將得到錯誤的結果。
5樓 巨大八爪鱼 2016-12-12 23:11

若要計算的是(-5)x(-3),那麼只需要在(-5)x(+5)的計算結果上減去第一個乘數-5,因為-3(1.101)去掉符號位後恰好等於+5(0.101)。
減1.011(-5)可以通過變補(取反後加一)轉換為加0.101。


計算結果為+15

回復帖子

內容:
用戶名: 您目前是匿名發表
驗證碼:
 
 
©2010-2024 Arslanbar [手機版] [桌面版]
除非另有聲明,本站採用創用CC姓名標示-相同方式分享 3.0 Unported許可協議進行許可。