DSD-4.2 Arithmetic
Arithmetic and float
running sums 计算无符号乘法
第一步: running sum清零:0000
结果一定为2N位
Longhand计算有符号乘法:两种纠错方式
At the end
注意:初始化多一位,每次写乘法结果要扩展一位符号,二者求和最高位进位要舍弃,并补一位。
在所有计算完成后进行纠错
加一个纠错码:纠错码是A的2‘s补码
检验是不是到了2Nbit,到了2N后不再扩展,进位都舍弃
in last step
计算部分与前面一样,但是在最后一次加法时,进行纠错:将A扩展后取2’s comp
Reduced Storage
假设我们想要保持位的存储尽可能小,在前面的例子中,我们为running sum保留了8位,为乘数保留了4位。现在我们总共分配2N位给运行和和乘数(只用一个2N寄存器存结果和B)
练习
Floating Point Number Representation
后四位可以被四舍五入
Floating Point (FP) Numbers
M:尾数(小数)
E:指数
Excess Code(余码)
The general form is: value = code – bias
如四位的码 bias=0111=7
用8 bit 表示Floating Point Numbers
第一个比特表示
浮点求和
小数 2‘scomplement形式是取反后在最低位加一
有一部分借鉴学长的笔记:(101条消息) 北邮 数字系统设计 12 Arithmetic_这不是Ourz的ID的博客-CSDN博客
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Chilh!
评论