Board logo

标题: [求助]DSP初学困惑:c54xx C调用汇编,参数是如何传递的? [打印本页]

作者: TMS320VC5402    时间: 2006-11-27 10:27     标题: [求助]DSP初学困惑:c54xx C调用汇编,参数是如何传递的?

[求助]DSP初学困惑:c54xx C调用汇编,参数是如何传递的?


作者: xiii_nuaa    时间: 2006-11-27 11:04

这是个很关键的问题,我用2000也还没搞明白,期待高手的出现,顶一下~~
作者: TMS320VC5402    时间: 2006-11-27 23:16

是指C函数的的参数传递到汇编子程序中
作者: xiii_nuaa    时间: 2006-11-29 09:18

详细去看C编译器的手册吧,我用2812,是在spru514b_TMS320C28x Optimizing C C++ Compiler User's Guide (Rev. B)。其中的一章重点讲了 Run-time Environment,介绍了在C中调中汇编函数时参数传递的规则。概括的来说,就是用寄存器或者stack,对应的分配有一套详细的规则。举例说,如果函数只有一个参数,并且是个pointer,那么在2812中它肯定是被放到XAR4中;如果参数是一个16-int,则根据规则会被放入AL中。。。。所以这些都是由C编译器定义好的,要写c-callabe的汇编函数必须要遵循这些规则。5000也有对应的手册吧,但是规则可能就不一样了,就我所知,2812和2407的规则都是不一样的。






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0