C语言 4字节(16进制)转换成浮点数的问题
答案:3 悬赏:0 手机版
解决时间 2021-03-29 00:23
- 提问者网友:星軌
- 2021-03-28 07:47
C语言 4字节(16进制)转换成浮点数的问题
最佳答案
- 五星知识达人网友:行雁书
- 2021-03-28 08:31
unsigned char * b = (unsigned char*)&a; 指针b, 指向a的首地址。
怎么算出来的:
从传感器传过来的CD CC CC 41, 小端码的话,四个字节内容 变化 为 0x41cccccd
转 float 为 25.6。
你可以 自己 用 联合体 研究:
union U{
float v;
unsigned char c[4];
unsigned int i;
}uu;
main(){
uu.c[0]=0xcd;
uu.c[1]=0xcc;
uu.c[2]=0xcc;
uu.c[3]=0x41;
printf(" %f %x",uu.v,uu.i);
}追问什么小端码?float类型的25.6的内存表示是0xa000000追答float类型内存表示 请阅读 IEEE 754-2008 国际标准。计算机按此标准存放float数据。
数据传输和存放,涉及字节流序列。小端码 和 大端码 字节序列 不同。
我上面程序帮你正确显示内存序列了。
如果你的计算机和系统 特殊,不按 寻常 电子设备,别人不熟悉你的系统,便无法帮你了。
怎么算出来的:
从传感器传过来的CD CC CC 41, 小端码的话,四个字节内容 变化 为 0x41cccccd
转 float 为 25.6。
你可以 自己 用 联合体 研究:
union U{
float v;
unsigned char c[4];
unsigned int i;
}uu;
main(){
uu.c[0]=0xcd;
uu.c[1]=0xcc;
uu.c[2]=0xcc;
uu.c[3]=0x41;
printf(" %f %x",uu.v,uu.i);
}追问什么小端码?float类型的25.6的内存表示是0xa000000追答float类型内存表示 请阅读 IEEE 754-2008 国际标准。计算机按此标准存放float数据。
数据传输和存放,涉及字节流序列。小端码 和 大端码 字节序列 不同。
我上面程序帮你正确显示内存序列了。
如果你的计算机和系统 特殊,不按 寻常 电子设备,别人不熟悉你的系统,便无法帮你了。
全部回答
- 1楼网友:痴妹与他
- 2021-03-28 10:06
1.定义一个字符指针b,指向变量a的地址。由于类型不兼容,对a的地址进行了强转(前面括号里边的是类型强转)。
2.a的值变成了25.6。跟浮点型的数据的存储方式有关,这个我不清楚。你可以自己搜一下浮点型数据在内存中的存储方式。
3.b是字符类型的指针,对b取值只取8位。a位float型,占32位。
2.a的值变成了25.6。跟浮点型的数据的存储方式有关,这个我不清楚。你可以自己搜一下浮点型数据在内存中的存储方式。
3.b是字符类型的指针,对b取值只取8位。a位float型,占32位。
- 2楼网友:低音帝王
- 2021-03-28 09:47
问题1,3楼上已经解答很清楚了
回答第二个问题:
浮点数定义的存储格式:(来自百科)
单精度浮点数(Single)
用来表示带有小数部分的实数,一般用于科学计算。
占用4个字节(32位)存储空间,包括符号位1位,阶码8位,尾数23位。其数值范围为-3.4E38~3.4E38,单精度浮点数最多有7位十进制有效数字,单精度浮点数的指数用“E”或“e”表示。
单精度浮点数有多种表示形式:±n.n(小数形式) ±n E ±m(指数形式) ±n.n E ±m (指数形式)
如果某个数的有效数字位数超过7位,当把它定义为单精度变量时,超出的部分会自动四舍五入。
应该是传感器得到的是浮点数,通过4个字节读取出来,需要按原格式转换为浮点数形式.
回答第二个问题:
浮点数定义的存储格式:(来自百科)
单精度浮点数(Single)
用来表示带有小数部分的实数,一般用于科学计算。
占用4个字节(32位)存储空间,包括符号位1位,阶码8位,尾数23位。其数值范围为-3.4E38~3.4E38,单精度浮点数最多有7位十进制有效数字,单精度浮点数的指数用“E”或“e”表示。
单精度浮点数有多种表示形式:±n.n(小数形式) ±n E ±m(指数形式) ±n.n E ±m (指数形式)
如果某个数的有效数字位数超过7位,当把它定义为单精度变量时,超出的部分会自动四舍五入。
应该是传感器得到的是浮点数,通过4个字节读取出来,需要按原格式转换为浮点数形式.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯