GAS (GNU Assembler) 可以编译到 iPhone/iTouch 吗?
我正在使用非官方的 Open SDK 为 iDevice 市场编写一些应用程序,但在 Windows 上安装开放工具链而不是 Linux 上遇到困难(我会使用 Linux,但不能在…
如何在64位汇编程序中使用RIP相对寻址?
如何在 AMD64 架构的 Linux 汇编程序中使用 RIP 相对寻址? 我正在寻找一个使用 AMD64 RIP 相对寻址模式的简单示例(Hello world 程序)。 例如,以下…
如何创建一个扩展为“(x+y*240)*2”这样的表达式的 GNU GAS 宏?
我正在使用 GAS 为 ARM Linux 构建一个程序,但我想做一些宏以使我的开发更加智能。然后我想知道: 我怎样才能为此做一个宏:(x+y*240)*2,是x和y是 i…
如何将 GNU GAS 宏参数与其他标记连接起来形成单个标签?
我想使用气体宏在汇编函数中动态创建一组标签。我想做这样的事情: .macro set_up_jumptab_entry prefix, from=0, to=10 .quad \prefix_\item .if \to…
i386 汇编问题:为什么我需要干预堆栈指针?
我认为在暑假期间学习 x86 汇编会有趣。因此,我从一个非常简单的 hello world 程序开始,借用了 gcc -S 可以给我的免费示例。我最终得到的结果是: H…
Gnu 汇编器 (GAS) 中的 CFI 指令有何用途?
每行后面似乎都有一个 .CFI 指令,而且还有各种各样的指令,例如 .cfi_startproc 、 .cfi_endproc 等。 更多信息。 .file "temp.c" .text .globl main…
0x4 在“movl $0x2d, 0x4(%esp)”中做什么?
我正在研究 GCC 生成的汇编代码。但我不明白: movl $0x2d, 0x4(%esp) 在第二个操作数中,0x4代表什么?偏移地址?那么寄存器EAX有什么用呢?…
Microsoft 汇编器到 GNU 汇编器的转换
我有一个 ARM 汇编代码,可以用 Visual Studio 很好地编译。我现在想使用相同的 ARM 汇编代码并使用 GNU Assembler 进行编译。如您所知,两个汇编器的…
MOV src,dest(或)MOV dest,src?
MOV 可能是每个人在学习 ASM 时学习的第一个指令。 刚才遇到一本书Rajat Moona 的 GNU/Linux 中 IA32 架构的汇编语言编程 内容如下:(已删除断开的链…
组装:从一个部分跳转到另一部分
在 x86 汇编中,如何执行从一个部分到另一个部分的无条件跳转? 例如: .section .text main: ... jmp here ... .section .another here: ... 我想这…