您好!
我将在 CCS (Code Composer Studio)中执行一些计算。 当变量声明为浮点或双精度数时、计算会产生不准确的结果。
如何解决问题。
ALL_calculation_7.7 + 2.4 = 10.1
ALL_calculation_9.8 - 5.6 = 4.2000000000000011 (错误)
ALL_calculation_5.9 * 2.7 = 15.930000000000001 (错误)
这是代码:
//
静态无符号 int Status_ALU = 0;
double alu_calculation_0.000;
ALL_calculation_=7.7 + 2.4;
if (alu_calculation_=10.100000)
{
ALL_calculation_0.000;
ALL_calculation_=9.8 - 5.6;
if (alu_calculation_=4.2)
{
STATUS_ALU = 1;
}
}
其他
{
STATUS_ALU = 0;
}
if (Status_ALU = 1)
{
ALL_calculation_5.9 * 2.7;
if (alu_calculation_=15.93)
{
STATUS_ALU = 1;
}
}
其他
{
STATUS_ALU = 0;
}
//
对此,
Vijay