TI中文支持网
TI专业的中文技术问题搜集分享网站

单步调试

我应用的是ccs3.3,dsp是28035,我想问下,g_u16Data1明明是2,为何还单步仿真时还进入两个if条件语句,虽然进了但是也没有按照if语句中的指令赋新值,这是为什么?

user3900194:

运行后,g_u16Data1还是等于2,虽然是结果对,但是还是很有疑惑,不知道啥原因,等待解答帮助,谢谢!

我应用的是ccs3.3,dsp是28035,我想问下,g_u16Data1明明是2,为何还单步仿真时还进入两个if条件语句,虽然进了但是也没有按照if语句中的指令赋新值,这是为什么?

Young Hu:

回复 user3900194:

应该是compiler优化的结果,建议直接看汇编代码

我应用的是ccs3.3,dsp是28035,我想问下,g_u16Data1明明是2,为何还单步仿真时还进入两个if条件语句,虽然进了但是也没有按照if语句中的指令赋新值,这是为什么?

user3900194:

回复 Young Hu:

这种情况遇到几次了,看汇编代码也进入了,只不过没有赋值,和c一样的。

和ccs编译器有关?我用的是ccs3.3

我应用的是ccs3.3,dsp是28035,我想问下,g_u16Data1明明是2,为何还单步仿真时还进入两个if条件语句,虽然进了但是也没有按照if语句中的指令赋新值,这是为什么?

user3900194:

回复 Young Hu:

这种情况不知道是对的,还是错的,现在很揪心。

我应用的是ccs3.3,dsp是28035,我想问下,g_u16Data1明明是2,为何还单步仿真时还进入两个if条件语句,虽然进了但是也没有按照if语句中的指令赋新值,这是为什么?

Young Hu:

回复 user3900194:

单步调试最好是看汇编代码,您看看汇编代码能够进去么?另外,if()里面的赋值语句没有执行,不会有问题的。

我应用的是ccs3.3,dsp是28035,我想问下,g_u16Data1明明是2,为何还单步仿真时还进入两个if条件语句,虽然进了但是也没有按照if语句中的指令赋新值,这是为什么?

user3900194:

回复 Young Hu:

我看汇编了,汇编代码也能够进去,出现这样的情况,我想问下这到底是什么原因造成的,根本说不通啊。

我应用的是ccs3.3,dsp是28035,我想问下,g_u16Data1明明是2,为何还单步仿真时还进入两个if条件语句,虽然进了但是也没有按照if语句中的指令赋新值,这是为什么?

user3900194:

麻烦各位大侠帮忙解决这个问题,到底是什么原因造成的呀。

赞(0)
未经允许不得转载:TI中文支持网 » 单步调试
分享到: 更多 (0)