最新消息:本站技术交流 QQ 群:28124927

[iOS Hacker] Xcode 使用和内联汇编

iOS/MacOSX/移动安全 exchen 4323浏览 0评论

1.在C/C++/Objective C调用汇编函数

在iOS工程里新建Assemble文件,编写代码

然后在main函数里导出,就可以直接用了。

2.内联汇编

VC的内联汇编非常简单,几乎和直接写汇编差不多,但是Xcode内联汇编比较复杂,格式如下:

第1行是汇编语句,如果有多句需要用\t\n来分隔
第2行是输出操作数,都是 "=r"(var) 的形式,var可以是任意内存变量(输出结果会存到这个变量中),除了r之外,一般还有下面这些标识符:
r 上面的寄存器的任意一个(谁闲着就用谁)
m 内存
i 立即数(常量,只用于输入操作数)
g 寄存器、内存、立即数 都行(gcc你看着办)
第3行是输入操作数,也是和输出操作数一样的格式。
第4行是的作用可以在汇编代码一运行之前,将指定的寄存器保存起来,当汇编代码结束后再恢复。

实例代码如下:

真机运行的汇编代码

转载请注明:exchen's blog » [iOS Hacker] Xcode 使用和内联汇编

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址