如何把十进制浮点数转换为十六进制的32位单精度IEEE754格式

2020-01-20 19:14发布

如何把十进制浮点数转换为十六进制的32位单精度IEEE754格式呢?
比如一个十进制数0d1010.0,转换为IEEE754格式为0x447C8000,然后把数据发送出去,
搜索一番,没找到答案,好像是库函数可以?哪位有代码呢,谢谢。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
xf331785508
1楼-- · 2020-01-20 22:45
LZ是来开玩笑的吗?

CCS
2楼-- · 2020-01-21 03:26
这个不需要转换
xf331785508
3楼-- · 2020-01-21 08:18
 精彩回答 2  元偷偷看……
arm7tdmi
4楼-- · 2020-01-21 12:43
xf331785508 发表于 2015-1-14 17:31
好吧。正式回复一下;


感谢
原来的浮点数用的是double类型,应该对此没什么影响吧?
并且要通过一个数值发送出去
double a;
unsinged char txdata[4];

void func(void)
{
        a=1010.0f;                 //10进制
        txdata[0]=(a>>24)&0xff;
        txdata[1]=(a>>16)&0xff;
        txdata[2]=(a>>8)&0xff;
        txdata[3]=a&0xff;
        //发送代码
}

总感觉哪不对呀?
varding
5楼-- · 2020-01-21 17:00
不需要复制一遍的,这个跟发送结构体内容一样的,你把首地址和长度给发送函数就可以了,发送函数会自己从你的内存区域读取他需要的数据
float a=0.12356;
send((char*)&a,sizeof(a));
无论a是什么类型均有效
hongh
6楼-- · 2020-01-21 20:41
以为是verilog

一周热门 更多>