LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析

LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,第1张

什么是定点数

顾名思义,在运算中小数点始终不会发生移动的数就是定点数。对于定点数,我们定义了其一共占有的bit位数以及小数点的位置,不同格式的定点数可以表达的数据范围和数据精度也会随之不同。

通常采用

LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,第2张

这样的一种规范来表示定点数。其中s表示符号位,m表示字长,n表示整数字长。LabVIEW中定点数存储空间,最大限定为64bit。

LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,第3张

 

图:有符号定点数表示方法

比如一个字长为8,整数字长为4的无符号定点数,其表示方法为<+,8,4>,表示范围从0—15.9375,增量值为0.0625。

LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,第4张

 

图:LabVIEW对于定点函数的即时帮助

为什么选择定点数?
【效率高,占用资源较少】
一般说来,定点数的运算在计算机中实现起来比较简单,效率较高;而浮点数的运算在计算机中实现起来比较复杂,效率相对较低。

LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,第5张

 

图:定点数以及单精度浮点数加乘运算占用资源

【执行时间短】
定点数的运算可以在FPGA一个单周期定时循环(SCTL)中完成,但是如若想在单周期定时循环中执行浮点运算则会编译失败

定点数的max、min和delta的计算
定点数的max和min是由符号位,字长和整数字长共同决定的,而delta的大小却与符号位无关。
我们定义一个定点数表示为<+,m,n>,当m个全部字长都为1的时候,该值有最大取值;当m个全部字长都为0的时候,该值为最小值。

LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,第6张

 

图:无符号定点数delta值表示

一个无符号定点数的最大值为 ,最小值为0,其增量值Delta为相似的,对于有符号的定点数来说,符号位为0,其余所有位为1时取最大值;符号位为1,其余所有位为0时,此时取最小值;其增量值Delta依然为。

定点数的运算
【加法】
定点数在进行相加的时候,对于<+, m, n> 与<+, m, n>进行相加,用<+, m+1, n+1>是完全可以包含其所有可能结果的。也就是分数部分位数不变,整数由于可能进位,所以整数部分位数加1,字长也相应加1。

LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,第7张

 

图:两个相同配置的无符号定点数相加

如果Add节点两端的定点数配置不同,分数部分位数取A与B中较大值,整数部分位数取A与B中较大值+1,字长等于分数位数与整数位数之和。

LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,第8张

 

图:两个不同配置的无符号定点数相加

【减法】
无论减数和被减数是否有符号,其结果必然为有符号定点数。也就是两配置为<+, m, n>的定点数相减,结果为<±,m+1, n+1>,当然两配置为<±,m, n>的定点数相减,结果依然为<±,m+1, n+1>。

LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,LabVIEW中定点数有什么用途?LabVIEW中定点数应用解析,第9张

 

图:定点数的减法

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/dianzi/2601164.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-08-09
下一篇2022-08-09

发表评论

登录后才能评论

评论列表(0条)

    保存