C语言ieee单精度浮点数转换,单精度浮点数转十进制方法
单精度浮点数转十进制方法
一、单精度浮点数符合IEEE754标准,32位,前面第一位是符号位,接下来的8位是指数,最后23位是尾数。编程中了解这些就够了,转换方法如下:
二、VB中转换示例:
'VB浮点数转换程序
Option Explicit '利用函数CopyMemory转换
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];
C语言ieee单精度浮点数转换,单精度浮点数转十进制方法相关推荐
- java浮点数化为整数_[Java教程]javascript浮点数转换成整数三种方法
[Java教程]javascript浮点数转换成整数三种方法 0 2014-06-24 04:00:27 将浮点数转换成整数方法有很多,分享三种常用方法. Summary 暂时我就想到3个方法而已.如 ...
- python把浮点数转换成16进制_delphi 浮点数float转换成十六进制字符串的方法(FloatToHex)...
重新书写了float型转为十六进制的delphi程序 Function FloatToHex(Value: single): string; var l, i: integer; HexText,te ...
- IEEE 754 单精度浮点数转换
浮点型数据通讯的时候,需要将浮点数转成对应的四字节内存数据,可以通过该网址工具验证. IEEE 754 单精度浮点数转换 http://www.styb.cn/cms/ieee_754.php 1.I ...
- 双精度改单精度c语言程序,C语言菜鸟基础教程之单精度浮点数与双精度浮点数...
上节课 简单介绍了浮点数.计算机程序中的浮点数分为单精度浮点数和双精度浮点数. 单精度和双精度精确的范围不一样. 计算机里的最基本的存储单位用位(bit)来表示.bit只能用来存储0或1. 稍大一点的 ...
- c语言浮点型菜鸟教程,C语言菜鸟基础教程之单精度浮点数与双精度浮点数
上节课 简单介绍了浮点数.计算机程序中的浮点数分为单精度浮点数和双精度浮点数. 单精度和双精度精确的范围不一样. 计算机里的最基本的存储单位用位(bit)来表示.bit只能用来存储0或1. 稍大一点的 ...
- c语言浮点数菜鸟教程,C语言菜鸟基础教程之单精度浮点数与双精度浮点数
上节课 简单介绍了浮点数.计算机程序中的浮点数分为单精度浮点数和双精度浮点数. 单精度和双精度精确的范围不一样. 计算机里的最基本的存储单位用位(bit)来表示.bit只能用来存储0或1. 稍大一点的 ...
- c语言编程输入单精度浮点数,小朋友学C语言(4):单精度浮点数与双精度浮点数...
上节课简单介绍了浮点数.计算机程序中的浮点数分为单精度浮点数和双精度浮点数. 单精度和双精度精确的范围不一样. 计算机里的最基本的存储单位用位(bit)来表示.bit只能用来存储0或1. 稍大一点的单 ...
- c语言单精度浮点数规格化,对浮点数的一些理解
浮点数的范围和有效位 对于浮点数,其能表示的数值范围和其有效位如下 类型 比特位 数值范围 有效位 float 32 -3.410^38-+3.410^38 6~7位 double 64 -1.710 ...
- 单精度浮点数和双精度浮点数存储
IEEE 754中 单精度浮点数和双精度浮点数存储 IEEE 754中 单精度浮点数和双精度浮点数存储 我们先了解一下 单精度浮点数 和 双精度浮点数 的基本信息. 名称 占用内存(bit;位) 内存 ...
最新文章
- redis增删改查封装
- ​基于BCI的现代神经反馈有助于认知增强
- pycharm调试如何返回上一步_如何在瑞芯微RK3399开发板上调用底层接口技术调试笔记...
- mysql 主从优点_MySql主从配置实践及其优势浅谈
- JavaFX UI控件教程(七)之Checkbox
- 【渝粤题库】广东开放大学社会学概论形成性考核
- 【大数据】最新大数据学习路线(完整详细版,含整套教程)
- Java中从String到Long的转换
- Java7并发编程指南——第八章:测试并发应用程序
- react-navigation StackNavigator 快速点击会多次跳转页面
- Lesson 08 for Plotting in R for Biologists
- 翻译:自动驾驶相关术语的分类和定义Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated
- AUC PR曲线 学习曲线
- OneApiConnect通讯demo,fins欧姆龙协议实现
- linux centos7下源码 tar安装mysql5.7.22或mysql5.7.20 图文详解
- 使用BOOTICE 恢复系统启动项
- 【GreenDao学习笔记】SQLite数据库保存float/double小数类型精度丢失
- MPLS之LDP协议
- UE4 Sequence学习
- java唯一id_生成唯一ID的四种办法 程序员必备