如何在 XCode 中使用 ARM 汇编程序?

Mic*_*ael 5 assembly xcode arm ios

仅出于教育目的,我想向现有的 iPhone 应用程序添加一个功能,该应用程序是用 ARM 程序集编写的。我一般不需要关于 ARM 汇编的教程,因为我已经阅读了太多的教程。我只是不知道如何实际运行代码!

我想做的是:

没用的.h:

void useless();
Run Code Online (Sandbox Code Playgroud)

没用的.s:

useless:
      bx lr
Run Code Online (Sandbox Code Playgroud)

如果这也适用于模拟器,那就没问题了……在模拟器上,.s 文件将无法编译,所以我应该执行以下操作:

没用的.s:

#if I_AM_ARM
useless:
      bx lr
#endif
Run Code Online (Sandbox Code Playgroud)

没用的.c:

#if !I_AM_ARM
void useless()
{
}
#endif
Run Code Online (Sandbox Code Playgroud)

我知道我使用的语法已损坏,但我该如何正确编写?(仅仅因为我想尝试一些内联汇编而在模拟器上破坏应用程序是没有选择的......)

第二个最好的选择是使用内联汇编,但我更喜欢非内联汇编。

谢谢!

编辑:我想学习ARM汇编,所以我想找到一种编译ARM汇编代码和EXECUTE ARM汇编代码的方法。

小智 3

模拟器不使用arm。如果你希望它在模拟器上运行,你必须编写 x86_64 程序集。(大概)。