单精度浮点数

发布时间:2012-03-19 阅读量:4404 来源: 我爱方案网 作者:

单精度浮点数

所谓单精度浮点数,其英文名称为Single,单精度浮点数就是用来表示带有小数部分的实数,一般用于科学计算。   

占用4个字节(32位)存储空间,包括符号位1位,阶码8位,尾数23位。其数值范围为3.4E-38~3.4E+38,单精度浮点数最多有7位十进制有效数字,单精度浮点数的指数用“E”或“e”表示。   

单精度浮点数有多种表示形式:±n.n(小数形式) ±n E ±m(指数形式) ±n.n E ±m (指数形式)   如果某个数的有效数字位数超过7位,当把它定义为单精度变量时,超出的部分会自动四舍五入。

单精度浮点数的存储

先贴一个输出单精度浮点数二进制代码的程序
/*
将一个单精度浮点数的二进制数字显示出来
*/
# include  

单精度浮点数与十进制数的转换


一、单精度浮点数符合IEEE754标准,32位,前面第一位是符号位,接下来的8位是指数,最后23位是尾数。编程中了解这些就够了,转换方法如下:

二、VB中转换示例:

’VB浮点数转换程序

Option Explicit       ’利用函数RtlMoveMemory转换
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Dim F As Single       ’十进制数
Dim A(3) As Byte      ’16进制浮点数

Private Sub Command1_Click()          ’转换为十进制数
  A(0) = CLng("&H" & Text1(3).Text)   ’16进制字符转数字
  A(1) = CLng("&H" & Text1(2).Text)
  A(2) = CLng("&H" & Text1(1).Text)
  A(3) = CLng("&H" & Text1(0).Text)
  CopyMemory F, A(0), 4               ’转换
  Text2.Text = F                      ’显示结果
End Sub

Private Sub Command2_Click()          ’转换为浮点数格式
  F = Val(Text2.Text)                 ’十进制字符转数字
  CopyMemory A(0), F, 4               ’转换
  Text1(0).Text = IIf(A(3) > 15, Hex(A(3)), "0" & Hex(A(3)))  ’显示结果
  Text1(1).Text = IIf(A(2) > 15, Hex(A(2)), "0" & Hex(A(2)))
  Text1(2).Text = IIf(A(1) > 15, Hex(A(1)), "0" & Hex(A(1)))
  Text1(3).Text = IIf(A(0) > 15, Hex(A(0)), "0" & Hex(A(0)))

End Sub

三、C中单精度浮点数转换示例:

union sf
{
float f;
unsigned char s[4];
}a;
float m;
unsigned char t[4]
//转换为十进制数
a.s[0]=0x51;  //低位在前
a.s[1]=0x06;
a.s[2]=0x9E;
a.s[3]=0x3F;
m=a.f;
//转换为浮点数格式
a.f=m;
t[0]=a.s[0];
t[1]=a.s[1];
t[2]=a.s[2];
t[3]=a.s[3];

相关资讯
无源晶振YSX321SL应用于高精度HUD平视显示系统YXC3225

在现代汽车行业中,HUD平视显示系统正日益成为驾驶员的得力助手,为驾驶员提供实时导航、车辆信息和警示等功能,使驾驶更加安全和便捷。在HUD平视显示系统中,高精度的晶振是确保系统稳定运行的关键要素。YSX321SL是一款优质的3225无源晶振,拥有多项卓越特性,使其成为HUD平视显示系统的首选。

拥有卓越性能的高精度超薄低功耗心电贴—YSX211SL

随着医疗技术的进步,心电监护设备在日常生活和医疗领域中起到了至关重要的作用。而无源晶振 YSX211SL 作为一种先进的心电贴产品,以其独特的优势在市场上备受瞩目。

可编程晶振选型应该注意事项

对于可编程晶振选型的话,需要根据企业的需求选择。在选择可编程晶振的时候注重晶振外观、晶振的频率、晶振的输出模式、晶振的型号等等,这些都是要注意的,尤其是晶振的频率和晶振输出模式以及晶振的型号都是需要注意的。

性能高的服务器—宽电压有源晶振YSO110TR 25MHZ,多种精度选择支持±10PPM—±30PPM

在现代科技发展中,服务器扮演着越来越重要的角色,为各种应用提供强大的计算和数据存储能力。而高品质的服务器组件是确保服务器稳定运行的关键。YSO110TR宽电压有源晶振,作为服务器的重要组成部分,具备多项优势,成为业界必备的可靠之选。

差分晶振怎么测量

其实对于差分晶振怎么测量方式有很多种,主要还是要看自己选择什么样的方式了,因为选择不同的测量方式步骤和操作方式是不同的。关于差分晶振怎么测量的方式,小扬给大家详细的分享一些吧!