请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
部件号:TMS320F2.8069万 工具/软件:TI C/C++编译器
CCS冠军,您好!
我的客户报告了一个关于左***用例的编译器问题,请帮助了解:
UINT16_t A = 0;
uINT32_t b = 0;
uINT32_t c = 0;
uINT32_t d = 0;
主{
....
A = 0x10;
B = 0x55;
d =(UINT32_t) a<16 -b;//获取错误结果 0x8000万
如果(d=0)
D=1;
A = 0x10;
B = 0x55;
C =(UINT32_t) a<16; //正确 0x10万
d = c - b; //获取正确的结果 0x000FFFAB
如果(d=0)
D=1;
....
}
如果将方程式更改为 d =(UINT32_t)(a<16)-b;,则工作正常。
我检查了拆卸代码,之前的代码使用LSLL,而正确的代码使用LSL。
请提供您对此问题的意见。
谢谢!
