有没有办法在 Objective C 程序中使用汇编代码。我正在为 OSX 开发一个应用程序,并希望将汇编代码与 Objective C 代码一起使用。我在互联网上搜索并找到了 this 但我无法成功实现这些方法中的任何一个。任何帮助将不胜感激。

最佳答案

是的当然。

您可以像在 C 中一样在 Objective-C 中使用 GCC 样式的内联汇编。您还可以在汇编源文件中定义函数并从 Objective-C 中调用它们。这是内联汇编的一个简单示例:

int foo(int x, int y) {
    __asm("add %1, %0" : "+r" (x) : "r" (y));
    return x;
}

以及如何使用独立程序集文件的类似最小示例:
** myOperation.h **
int myOperation(int x, int y);

** myOperation.s **
.text
.globl _myOperation
_myOperation:
    add %esi, %edi  // add x and y
    mov %edi, %eax  // move result to correct register for return value
    ret

** foo.c **
#include "myOperation.h"   // include header for declaration of myOperation
...
int x = 1, y = 2;
int z = myOperation(x, y); // call function defined in myOperation.s

关于objective-c - 在 Objective c 程序(Xcode)中使用汇编代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25326307/

10-11 18:36