labview编程技巧---定点数转换

2015-08-20 12:36:06来源: eefocus
接收到一串PCM数据,如下: 
0000 1264 C97C 8937 77C8 3783 EE9B 0000 

说明两个字节对应一个点的数据(高低位互换后,如:1264(存储时的样子),实际数值为:6412(16进制),他们对应的10进制浮点数如下: 
0  0.781831482452  0.9749279121932  0.4338837391869  -0.4338837390251  -0.9749279121533  -0.781831482564  -1.79586368671E-10 

问题:

例如:    C877 (16进制)   =  -0.4338837390251 (10进制)    如何计算?如何判断这是个负数?


如何判断一个16进制数是正,还是负?(下面是16进制数和对应的10进制数)

0000    6412                         7CC9                          3789      
0          0.781831482452      0.9749279121932      0.4338837391869        
***************************************************************************************
C877                          8337                             9BEE                             0000 
-0.4338837390251   -0.9749279121533       -0.781831482564         -1.79586368671E-10


如何只知道一个2字节的16进制数,判断出这是个的正负?(知道它对应的带符号的浮点数?如:
知道" C877  (16进制) ",如何判断出这是个的正负?得到 "   -0.4338837390251   "?

****************************************************************************************************************************************

分析:
IEEE标准规定,双精度浮点数为8个字节,单精度浮点数是4个字节,所以两个字节长度肯定不是浮点数,LABVIEW中的浮点数数据类型是完全符合IEEE标准的。上述问题实际是定点数而不是浮点数。

定点数小数点的位置和位数可以通过对话框配置,针对上述问题,配置如下:


关键字:labview  编程技巧  定点数转换

编辑:什么鱼 引用地址:http://www.eeworld.com.cn/Test_and_measurement/2015/0820/article_12852.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
labview
编程技巧
定点数转换

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved