如何在我的 C 程序中包含任何汇编代码行?
在 turbo c 中是否有可能将汇编代码文件 (.asm) 添加到少数 .c 文件的项目中?
如何在我的 C 程序中包含任何汇编代码行?
在 turbo c 中是否有可能将汇编代码文件 (.asm) 添加到少数 .c 文件的项目中?
包含汇编代码的一种方法是添加一个包装函数并将汇编代码写入 asm 块中,如下例所示:
void wrapper_function()
{
asm
{
/* your assembly code */
}
}
您可以使用您的 makefile 为不同的目标类型定义操作。对于 C 类型(例如 foo.c),调用 C 编译器。对于 ASM 文件,调用汇编程序。任何一个的输出都应该是一个目标文件(例如 .o),它们都可以由链接器一起编译。
如果您有一点组装,请继续进行内联。否则,我建议将单独的模块和功能分解作为管理一切的最佳方式。特别是如果您需要支持不同的目标(即跨平台开发)。
您还可以链接到目标文件。但是内联汇编器更容易维护。
void func()
{
asm://assembly statements...
asm://assembly statements...
...
}