GNU 汇编程序 GAS

在 Linux 源代码中,以.S(或.s)为扩展名的文件是包含汇编语言代码的文件。

在 Linux 下有两种方式,一种是使用汇编程序 GAS 和连接程序 LD, 一种是使用 GCC。

GAS 把汇编语言源文件(.S 或.s)转换为目标文件(.o):

as sourcecode.s -o objfile.o

一旦创建了一个目标文件,就需要把它连接并执行,连接一个目标文件的基本语法为:

ld objfile.o -o execode

这里 objfile.o 是目标文件名,而 execode 是输出(可执行) 文件。

如果要使用 GNU的 C 编译器 gcc,就可以一步完成汇编和连接,例如:

gcc -o execode sourcecode.S

sourcecode.S 是你的汇编程序,输出文件(可执行文件)名为 execode。其中,扩展名必须为大写的 S,这是因为,大写的 S 可以使 gcc 自动识别汇编程序中的 C 预处理命令,像#include、 #define、 #ifdef、 #endif 等,也就是说,使用 gcc 进行编译,你可以在汇编程序中使用 C 的预处理命令。

posted @ 2018-04-07 15:39  刘-皇叔  阅读(1337)  评论(0编辑  收藏  举报