2010-02-08 30 views
0

我听说在C语言中编程嵌入式系统时需要调用汇编函数/调用。这在C++中有必要吗?C++在嵌入式系统中对汇编的需求

+0

编程嵌入式系统时可能不需要汇编语言功能;取决于支持包和性能。我更喜欢用汇编函数(在单独的文件中)而不是内联汇编替换整个C或C++函数。内联汇编通常保留直接访问硬件。 – 2010-02-09 00:20:15

+0

这是一个很好的做法。 – 2010-02-09 01:37:26

回答

5

C++不提供比C更多的低级构造。因此,如果你需要用C语言来控制寄存器和ISR,你需要用C++来完成。

+0

我知道C++没有提供比C更低级别的结构。但是,你的意思是“你需要用C++来完成” - 这句话听起来像是一个矛盾。 – 2010-02-08 23:35:43

+2

嗯,我的意思是说,如果你需要在C语言中使用C++,那么在使用C++时就需要这样做。 C++在这方面不提供任何优势。 – dirkgently 2010-02-08 23:37:44

+0

也许你可以清除你的问题中的措辞。 – Earlz 2010-02-08 23:40:15

3

调用组件的功能或使用组件的调用包括:缠绕在一个C使用与您的可执行文件,写于链接的相应的编译器标记或

  • 另一个目的/ C++函数

    • 须─联汇编程序集的行为就像你的系统上的C函数一样。

    因此,如果您需要在C中使用汇编,则需要在C++中使用汇编。这不仅仅是嵌入式编程也是如此。以intel x86芯片执行指令cpuid为例。