繁体   English   中英

IEEE浮点和快速浮点表示在内存中

[英]IEEE floating point and fast floating point representation in memory

ADI公司的BFF-533处理器不提供本机浮点支持,但提供浮点仿真。

使用IDE VisualDSP ++,允许用户在高性能浮点和严格的IEEE兼容性之间进行选择。

根据我的理解, 这两者之间的差异导致内存中浮点值的不同表示,所以我做了以下测试:

union TestType
{
    float hello;
    char test[4];   
};

TestType tt;
tt.hello = 0.00123456789;

我用两个选项编译并运行它,期望在测试数组中看到不同的值,但每次运行都得到相同的值:

在此输入图像描述

有人可以解释为什么我在两次运行中看到似乎是IEEE代表吗?

您引用的文档讨论了用户定义的fastfloat16类型。 您在此处使用本机float类型。 无论VisualDSP设置如何,我都不认为它们是等效的。

“严格的IEEE合规性”通常被解释为“即使边缘情况也能正确处理”。 IEE754的边缘情况是非正规数,除零,无穷大,非数字等。例如,在IEEE754 NaN != NaN 这意味着您无法进行快速32位比较。 另一个例子是IEEE754要求基本数学运算精确到最后一位。 使用IEEE754浮点布局可以实现显着的加速,但不是IEEE754数学。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM