混合编程的问题,望大家指点
时间:10-02
整理:3721RD
点击:
通常,说c调用汇编时要注意,嵌入的汇编程序不要破坏c 的执行环境。
但是c的执行环境是什么呢?
是不是很弱 的问题啊??
C语言被编译之后会使用一些寄存器和堆栈来传递函数的参数和函数的返回值。如果你要写汇编的函数,也必须遵循这个规则,具体的C语言环境可以参考开发手册。
谢谢,我觉得这个c的环境,是不是涉及到寄存器规则和函数调用规则?
是的. 必需充分考虑到C被编译后所要用到的各个寄存器和堆栈资源,以免冲突.
比如说,像 AR1, AR6, AR7, SP 等C环境下的装用寄存器.