1

我可以在 GAS 中使用分号作为注释字符吗?

我正在使用带有 Intel 语法的 GAS 2.30,如下所示。

.intel_syntax noprefix

.section .text

# Program entry point
.globl _start

_start:

    # Put the code number for system call
    mov eax, 1

    # Return value
    mov ebx, 0

    # Kernel call
    int 0x80

这很好用,只是我必须使用“#”作为注释字符而不是“;”。

重要的主要原因是我拥有的编辑器(SublimeText 3.2.2,build 3211)只有 ARM 或 NASM 汇编语法的语法高亮显示,它们都不理解“#”的注释,因为我正在关注主要的材料使用英特尔语法,这是我想与我正在阅读的内容保持一致的内容。

我查看了英特尔手册,5000 多页的 PDF 文档,除非我以某种方式错过它,否则它没有说明任何评论,尽管英特尔的介绍性页面使用分号进行评论。

我的问题是,在这种情况下,是否有可能让 GAS 使用分号而不是井号,或者这可能是简单习惯的小差异之一?

我知道 GAS 也将接受 /、// 和 /* */ 但 SublimeText 不理解这些。

有趣的是,告诉 SublimeText 使用 Bash 语法突出显示是一个很好的解决方案,如下面的屏幕截图所示,但也许还有一种方法可以将 GAS 配置为也使用分号?谢谢。

SublimeText 中的 GAS 汇编语法高亮显示

4

1 回答 1

3

不,gas 没有用于此的命令行开关或指令。注释字符是硬编码的。

但是,如果您真的想要的话,看起来在气源中更改它们并编译自定义版本并不难。一目了然,您想将其添加;i386_comment_charsandline_comment_chars中,然后将其从 中删除line_separator_chars

于 2020-09-06T23:30:38.480 回答