首页 > 解决方案 > 内核 *.S 文件使用 x64 程序集还是 32 位?

问题描述

在这个问题中:GCC-Assemby Error: Relocation R_X86_64_32S against '.data'是 x64 中 'hello world' 的一个示例。我之所以选择这个,是因为我正在寻找一本适用于 x64 架构的优秀 GAS asm 书籍(为什么要学习旧的 32 位 asm),但大多数导师和书籍仅适用于 32 位。(例如专业的asm语言,非常推荐)。我的目的,或者为什么我什至想学习 asm(GAS 而不是 nasm),是为了让我能够理解内核 *.S 文件。但在上面的例子中(第一个 url),在 x64 中显示了完全不同的 hello world,然后在 32 中。

所以我的问题是:x64 与 32 位 x86 有多大不同,内核之间使用了多少(这就是我想学习 x64 的原因)?

标签: assemblylinux-kernelx86-64gnu-assembler

解决方案


推荐阅读