当前位置:   article > 正文

有符号小数的表示、扩展和计算_有符号数的拓展

有符号数的拓展

目录

一、有符号数和无符号数的表示方法

二、小数的表示方法

三、数的扩展

 四、有符号小数的计算 


一、有符号数和无符号数的表示方法

对于n bit有符号数,其表示方法为:

对于n bit无符号数,其表示方法为:

例如,对于一个4bit数 4‘b1011,如果它是一个有符号数,其值为

如果它是一个无符号数,其值为

二、小数的表示方法

对于一个有符号数,假设数据总位宽为m,小数位宽为n,则可表示为mQn

例如10Q8,表示总位宽为10,小数位宽为8

三、数的扩展

1、整数部分扩展

整数是在高位对数进行扩展,对于有符号数来说,在高位补充符号位;对于无符号数来说,在高位补充0

例如:

对于4 bit数无符号数10,二进制表示为4‘b1010,将其扩展位6bit数,则在高位补充2 bit 0,二进制表示为6‘b001010

对于4bit有符号数-6,二进制表示为4‘b1010,将其扩展位6bit数,则在高位补充2 bit符号位,4‘b1010的符号位为1,所以在高位补充2 bit 1,表示为6‘b111010

2、小数部分扩展

小数的表示方法:

对于假设一个有符号小数6Q3,其值为6‘b101011,与十进制的转化关系:

 

 扩展方法:在低位补0

例如,将6Q3表示的6‘b101011,扩展位7Q3,为7‘b1010110

 四、有符号小数的计算 

1、加法

在计算加法之前,需要将两个数的小数点对齐,使小数位对齐,然后扩展符号位,使正数部分位宽对齐

例如5Q3 5‘b10.101 与6Q2 6‘b0110.01相加

1)小数位对齐。5Q3有3 bit 小数,6Q2有2 bit 小数,需要将6Q2的小数位扩展到3bit。 6‘b0110.01扩展为 7‘b0110.010

2)整数位对齐。5Q3有2 bit 整数,6Q2有4 bit 小数,需要将5Q3的整数位扩展到4bit。

5‘b10.101扩展为 7‘b1110.101

3)相加。注意,2个7bit数相加的结果应该用8bit表示,因此和的数据格式为8Q3

2、乘法

积的总数据位宽为两个有符号数的总位宽之和,积的小数数据位宽为两个有符号数的小数位宽之和。

即先将2个二进制数相乘,再点小数点

例如:5Q3 * 5Q3,结果为10Q6

即mQn * xQy = (m+x) Q (n+y)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/272295
推荐阅读
相关标签
  

闽ICP备14008679号