gpt4 book ai didi

iphone - 在 iPhone 上编写 ARM 汇编代码的工作流程

转载 作者:行者123 更新时间:2023-12-03 18:24:39 25 4
gpt4 key购买 nike

我想开始编写 ARM 汇编程序并在 iPhone 上运行它。

这并不是为了在要发布到应用程序商店的应用程序中使用 - 基本上我想解决 ProjectEuler 上的问题使用 ARM 和 iPhone,仅用于爱好和教育目的。

我怎样才能做到这一点?我无法想出一种使用任何手写 ARM 运行项目的方法。

最佳答案

我还没有找到任何有关如何专门为 iPhone 编写汇编代码的信息,但就像其他人在这里所说的那样,您可以:

1) 在 C/C++/ObjC 代码中编写内联 asm 语句,或者2) 在“.s”文件中编写独立的汇编函数,然后将其添加到您的 XCode 源中,或者3) 为外部汇编器(例如 NASM)编写独立的汇编函数。您在“.s”文件中编写汇编代码,并使用 NASM 生成“.o”目标文件,并将该目标文件与 XCode 中的项目链接起来。

因此,如果您只是尝试编写一些汇编指令,那么内联汇编器将是最简单的方法,但如果您计划编写多个汇编函数,那么我建议您使用独立的汇编文件。如果您计划使用宏编写许多汇编函数并希望跨平台兼容性等,那么我建议使用 NASM 将汇编代码编译到目标文件中。因为我使用的是 XCode gcc 汇编器,与 NASM 相比,它是相当缺乏的。您可以通过 http://www.nasm.us/ 免费获取 NASM

设置好汇编环境后,您需要学习如何编写 ARM 汇编代码!因为 iPhone(以及许多其他可移植设备和智能手机)使用 ARM 指令集。 http://www.coranac.com/tonc/text/asm.htm 有一个关于 ARM 汇编的非常好的但古老的介绍。 .

当涉及到汇编编程时,官方指令集引用手册通常是您将编写的所有内容的主要信息来源,因此您应该访问 ARM 网站并下载 ARM and Thumb-2 Quick Reference Card (6 页长)以及适用于您的具体 CPU 的 2 个完整文档。

例如,iPhone 3GS 和 iPhone 4 都具有 ARMv7-A Cortex-A8 CPU,因此您可以下载 ARM Architecture Reference Manual ARMv7-A and ARMv7-R Edition (2000 页长)它告诉您哪些指令可用以及它们如何工作,以及 Cortex™-A8 Technical Reference Manual这解释了您的特定 CPU 的指令时序等。

关于iphone - 在 iPhone 上编写 ARM 汇编代码的工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1579950/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com