您好,我用TMS320F2809进行乘法运算,定义如下:
unsigned long result;
unsigned int submul1;
unsigned int submul2;
result=(unsigned long)(submul1*submul2);
当结果大于65536的时候,出现高16无结果的现象;如1785*37=66045,得到的result结果为509。请问,我应该怎么样写,才能保存真正的结果呢?谢谢!!!
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.
您好,我用TMS320F2809进行乘法运算,定义如下:
unsigned long result;
unsigned int submul1;
unsigned int submul2;
result=(unsigned long)(submul1*submul2);
当结果大于65536的时候,出现高16无结果的现象;如1785*37=66045,得到的result结果为509。请问,我应该怎么样写,才能保存真正的结果呢?谢谢!!!
试试下面这个
(long) result =(long)(submul1)*(long)(submul2);