当前位置:七道奇文章资讯编程技术VC/C++编程
日期:2011-03-22 13:54:00  来源:本站整理

<b>Vdsp(bf561)中的浮点运算(13):fract16乘法运算</b>[VC/C++编程]

赞助商链接



  本文“<b>Vdsp(bf561)中的浮点运算(13):fract16乘法运算</b>[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

vdsp供应了三种差别的方法举行fract16的乘法运算.

1.1 mult_fr1x16函数

这个函数定义为:

#pragma inline
#pragma always_inline
static fract16  mult_fr1x16(fract16  __a, fract16  __b) {
fract16  __rval = __builtin_mult_fr1x16(__a, __b);
return __rval;
}

从这里可以看出我们实际可以利用__builtin_mult_fr1x16这一函数调用.

写一个很简单的程序:

typedef fract16 ft;

ft calc(ft x, ft y)
{
ft r;
r = __builtin_mult_fr1x16(x, y);
return r;
}

__builtin_mult_fr1x16展开后的汇编代码为:

// line 29
R0.L = R0.L * R1.L (T);
R0 = R0.L (X);
W[FP + 16] = R0;

因而完成这样一个运算将只需求一个cycle的时间.

这里的乘法运算利用了(T)尾缀,文档里这样注释:

Signed fraction with truncation. Truncate Accumulator 9.31 format value at bit 16. (Perform no rounding.) Saturate the result to 1.15 precision in destination register half. Result is between minimum -1 and maximum 1-2-15 (or, expressed in hex, between minimum 0x8000 and maximum 0x7FFF).

这种计算方法直接将累加器里的数举行截断而不举行任何舍入的处理.

1.2 multr_fr1x16

这个函数定义为:

/* Performs a 16-bit fractional multiplication of the two input
** parameters. The result is rounded to 16 bits. Whether the
** rounding is biased or unbiased depends what the RND_MOD bit
** in the ASTAT register is set to.
*/

#pragma inline
#pragma always_inline
static fract16  multr_fr1x16(fract16  __a, fract16  __b) {
fract16  __rval = __builtin_multr_fr1x16(__a, __b);
return __rval;
}


  以上是“<b>Vdsp(bf561)中的浮点运算(13):fract16乘法运算</b>[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .