为何会出现在在32位和64位的LabVIEW,Measurement Studio的,或LabWindows/ CVI应用分析功能的结果稍有差别?



主要软件:
主要软件版本: 2009
主要软件修正版本: N/A
次要软件: N/A

问题: 我比较LabVIEW中, Measurement Studio或LabWindows/ CVI编写的32位和64位应用程序的信号处理功能中的数学功能结果,我看到他们之间的数值略有差异。为何会出现在32位应用程序和64位应用这些分析函数的结果有微小的差别?

解答: 在32位Windows应用浮点数数学运算使用处理器的寄存器是80位宽。在64位Windows应用浮点数数学运算使用处理器的寄存器只有64位宽。这在数位处理器的区别寄存器使得32位应用程序和64位应用程序执行相同的数学运算产生不同的结果。Microsoft Visual Studio对于在64位Windows应用程序的浮点运算的64位寄存器是限制强制执行的。此限制是为了改善对精度的性能价格比。

相关链接: KnowledgeBase 506DUP3S: LabVIEW 64-Bit vs. 32-Bit Applications FAQ Developer Zone Tutorial: A Closer Look at Windows Vista, Part III: 32-Bit vs. 64-Bit Windows

附件:





报告日期: 09/23/2009
最近更新: 07/24/2011
文档编号: 51MA76UB