【问题标题】:Include assembly file in another assembly file在另一个程序集文件中包含程序集文件
【发布时间】:2017-01-20 07:14:09
【问题描述】:

我有两个文件,main.s 和 test.s,其中 test.s 看起来像这样:

test:
   add a1,a2,a2

...而 main.s 看起来像这样:

main:
   call test

(非常无意义的例子)。如何在 main 中包含测试?我正在使用这样的 gcc:

gcc -o main main.c

但我不知道如何在其中使用测试...有什么帮助吗?

【问题讨论】:

    标签: gcc assembly include


    【解决方案1】:

    您可以像在 GCC 中包含其他任何内容一样包含该文件:

     #include"test.S"
    

    如果您使用的是 NASM,您会使用:

     %include "test.s"
    

    【讨论】:

    • 据我所知,GCC 对文件扩展名“.s”(小写)和“.S”(大写)的处理方式不同:大写允许预处理器指令(例如 #include 或 #ifdef) , 小写不行。在 Windows 下,这只是 GCC 命令行的不同,因为文件名本身不区分大小写。在 Linux 下,文件必须以正确的方式(重新)命名。
    猜你喜欢
    • 1970-01-01
    • 2014-06-07
    • 1970-01-01
    • 2017-10-16
    • 2015-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-02
    相关资源
    最近更新 更多