工具/软件:Code Composer Studio
我在 C 程序中定义了两个全局数组、uint16 x[80]和 uint32 y[80]。 C 语言程序调用汇编语言程序来计算 x[i]+y[i]+y[0]、并返回长整数。 函数的 C 原型为 uint32 LayPos (uint16 I)。函数的汇编语言程序如下:
LayPos (_LayPos):
MOV @AR0、 AL
MOVW DP、 #_x
MOVL XAR4、 @μ_x
MOVU ACC、 *+ XAR4[AR0]
MOVW DP、 #_y
MOVL XAR5、 @μ_y
ADDUL ACC、 *+ XAR5[AR0]
ADDUL ACC、 *+ XAR5[0]
LRETR
上述程序无法达到预期的结果。 哪里出错了? 它是寻址模式错误吗?
如何在 CCS 6.1.0中查看 C 函数的汇编语言代码?