TI论坛
直播中

彭铮

8年用户 240经验值
私信 关注
[问答]

F2812的数据类型不支持32位long型吗?

        我在使用CCS3.3编译器写2812程序时,意外发现编译器不支持32位的long型数据。我所定义的long型变量,在计算值超过16位时,就溢出了,这是怎么回事,难道是编译器BUG吗??

回帖(3)

李渝辉

2018-12-3 16:14:48
受到警告
提示: 作者被禁止或删除 内容自动屏蔽
举报

彭铮

2018-12-3 16:21:47
引用: 抹茶小婊砸 发表于 2018-12-3 12:36
不会呀,2812完全能支持32位数据运算,注意在进行32位数据运算过程中,保证每一个中间变量的值都不可超过32位,否则会溢出。

嘿嘿,多谢提醒,确实是这样的 ,问题找到了。
我的等式的一边的两个数据是用 define 定义的,现在才发现define定义的数据是int型的。我之前的理解是在一个等式中,只要有更高位的数据类型,其计算结果就会自动向它转换,现在看来,我的这个理解只适用于等式的一边。
举报

胡红枚

2018-12-3 16:27:17
都有相关手册    可以看看具体的数据类型说明   2812如下图所示:
举报

更多回帖

发帖
×
20
完善资料,
赚取积分