找回密码
 立即注册
楼主: 王昱顺

MDU32D测试, 加速7.47倍,更快的AI8H2K12U-B版本的一些注意事项

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:499
  • 最近打卡:2025-06-16 10:06:31
已绑定手机
已实名认证

112

主题

2391

回帖

6016

积分

版主

积分
6016
发表于 2025-2-9 10:34:51 | 显示全部楼层
LAO*** 发表于 2025-2-7 07:39
关于 float类型的乘法在复杂小数的情况下出现了一些数值偏差,
========================================= ...

计算例如1.5*2这种是准确的,但是计算例如1.23456*5.67892这种长一些的就有问题了。
使用无mdu库情况下是准确的。
我目前在外面,没法给出有问题的准确数值,稍晚一些我用电脑给出验证截图和实际有问题的数值
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:499
  • 最近打卡:2025-06-16 10:06:31
已绑定手机
已实名认证

112

主题

2391

回帖

6016

积分

版主

积分
6016
发表于 2025-2-9 17:20:20 | 显示全部楼层
LAO*** 发表于 2025-2-7 07:39
关于 float类型的乘法在复杂小数的情况下出现了一些数值偏差,
========================================= ...

经查看源代码,看到问题是两个float类型的数据相乘,具体代码为:
float f1 = 3.141592;
float f2 = 9.330303;
r42 = f1*f2;//正常为29.312006,异常,输出为26.562006
通过对比不添加数学库和添加数学库可以得到两个相差较大的数字,误差已经有点大了
许老师可以尝试复现一下

点评

收到  详情 回复 发表于 2025-2-11 09:03
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5499

积分

荣誉版主

积分
5499
发表于 2025-2-11 09:03:32 | 显示全部楼层
王*** 发表于 2025-2-9 17:20
经查看源代码,看到问题是两个float类型的数据相乘,具体代码为:
float f1 = 3.141592;
float f2 = 9.33 ...

收到
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:67
  • 最近打卡:2025-06-16 08:30:05
已绑定手机

17

主题

472

回帖

1341

积分

金牌会员

积分
1341
发表于 2025-2-18 14:02:36 | 显示全部楼层
王*** 发表于 2025-2-9 17:20
经查看源代码,看到问题是两个float类型的数据相乘,具体代码为:
float f1 = 3.141592;
float f2 = 9.33 ...

好像C51内部实际使用的是双精度运算,然后转换成单精度输出
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-16 18:55 , Processed in 0.116783 second(s), 72 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表