This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F28379D:舍入数

Guru**** 2538930 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/608816/tms320f28379d-rounding-number

器件型号:TMS320F28379D

大家好、我将在28379d launchpad 上测试舍入模式。

我在 CPU 和 CLA 中编写以下代码。

int a=0;

A=A+11.5。

运行代码后、我得到 A=11。

在 CLA 中、我添加了代码  

_asm (" MSETFLG RNDF32=1");

它将舍入模式设置为舍入到最接近的偶数。 我想得到 A=12、但它仍然是11。

在 CPU 中、我添加了代码

_asm (" SETFLG RNDF32=1");

它还将舍入模式设置为舍入到最接近的偶数。 我想得到 A=12、但它仍然是11。

为什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Howard、

    您看到的任何内容都是因为 C 语言的类型转换

    基本上它就是这样工作的。 您可以在 此处看到一个示例

    因此、基本而言、您将舍入11。 这给出了相同的答案。

    希望这对您有所帮助

    此致、

    密尔