目前共有4篇帖子。 字体大小:较小 - 100% (默认)▼  内容转换:港澳繁體▼
 
点击 回复
937 3
補碼一位乘法——校正法
一派掌门 二十级
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

 

回复帖子

内容:
用户名: 您目前是匿名发表
验证码:
(快捷键:Ctrl+Enter)
 

本帖信息

点击数:937 回复数:3
评论数: ?
作者:巨大八爪鱼
最后回复:巨大八爪鱼
最后回复时间:2016-12-12 23:11
 
©2010-2025 Purasbar Ver2.0
除非另有声明,本站采用知识共享署名-相同方式共享 3.0 Unported许可协议进行许可。