设置 | 登录 | 注册

作者共发了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-2025 Purasbar Ver3.0 [手机版] [桌面版]
除非另有声明,本站采用知识共享署名-相同方式共享 3.0 Unported许可协议进行许可。