azfeng
级别: 略有小成
精华主题: 0
发帖数量: 96 个
工控威望: 254 点
下载积分: 1331 分
在线时间: 61(小时)
注册时间: 2008-12-03
最后登录: 2024-07-19
查看azfeng的 主题 / 回贴
楼主  发表于: 2008-12-26 00:12
我想将D0到D20里的20个数据相加,要用什么方法啊,很急哦,望大家帮忙
zxc6688
工业自动化是我们的目标
级别: 略有小成
精华主题: 1 篇
发帖数量: 385 个
工控威望: 338 点
下载积分: 3994 分
在线时间: 174(小时)
注册时间: 2007-09-11
最后登录: 2024-01-05
查看zxc6688的 主题 / 回贴
1楼  发表于: 2008-12-26 09:14
引用
引用第1楼红亮于2008-12-26 07:02发表的  :
ld x0 dmeanp d0  d30 k20       ld x0 dmul d30 k20  d32          d32  d33里的值就是20个数据 的总和


1楼的方法很好,但指令有错误。

首先,根据楼主的意思是D0---D20里的数相加,这里不应该用32位指令DMEANP、DMULP,要用MEANP、MULP。
其次,D0---D20不是20 位,而是21位。这里要用K21
第三,假如这21位相加后不被整除,那么误差就会很大。

1楼可以仿真试试
[ 此帖被zxc6688在2008-12-26 09:43重新编辑 ]
http://zxc6688.ys168.com/