Microchip软件怎么读取ieee754内存值?

2020-02-08 09:11发布

我在keil c里能读出内存值,不知道怎么的,在Microchip里边就不对了,不知道哪位大侠可以帮助一下的!谢谢!
代码如下:

void main(void)
{
  float ieee754;
  unsigned int VOL;
  unsigned char *per;
  per=(unsigned char *)&ieee754;
  per[0]=0x40;
  per[1]=0x21;
  per[2]=0x9b;
  per[3]=0x00;
  VOL=ieee754*1000;
  while(1);
}

此代码在keil c可以读出VOL、ieee754、per[]等的值,在microchip里就错乱了,读不到了。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
usk5yenj4id04dm
1楼-- · 2020-02-08 12:55
被优化掉了?
usk5yenj4id04dm
2楼-- · 2020-02-08 15:00
第一,可能被优化掉了.
第二,字节顺序可能不同,在KEIL的赋值和在MPLB的赋值结果完全不同.
usk5yenj4id04dm
3楼-- · 2020-02-08 15:17
还有
第三,float在MPLAB里面默认是3字节,不是IEEE754格式.
yanghuai1023
4楼-- · 2020-02-08 19:56
 精彩回答 2  元偷偷看……
eduhf_123
5楼-- · 2020-02-08 20:17
yanghuai1023 发表于 2012-6-7 10:27
请问该怎么样转过来呢?
我调换了字节顺序,可以得到与keil相同的ieee754,还有一个很奇怪的问题,就是浮点 ...

2.252不能用有限位的二进制小数来表示,只能截断。
yanghuai1023
6楼-- · 2020-02-09 00:33
请问,microchip有没有能直接把ieee754转换成浮点数的例子啊?

一周热门 更多>