【问题标题】:FASM - compacting "buffer db 0, 0, 0, 0, 0, 0, ..."FASM - 压缩“buffer db 0, 0, 0, 0, 0, 0, ...”
【发布时间】:2012-02-12 21:06:28
【问题描述】:

我很幸运地遇到了一些在 FASM 中编译良好的 NASM 代码,只更改了一行;

buffer times 64 db 0

这在 NASM 中可以正常工作,但在 FASM 中不行 - 我必须写:

buffer db 0, 0, 0, 0, 0, 0, ...

必须有更紧凑的方法来做到这一点。

【问题讨论】:

    标签: assembly nasm fasm


    【解决方案1】:

    您可能正在寻找:

    buffer db 64 dup(0)
    

    【讨论】:

      【解决方案2】:

      在 fasm 中你应该写

      buffer rb 64 ; reserve 64 bytes
      

      【讨论】:

        【解决方案3】:

        在 fasm 中,当一个标签后面跟着一个宏时,它的名字应该以冒号结尾

        buffer: times 64 db 0
        

        【讨论】:

        • 这个答案提供了最接近原始代码的解决方案。
        猜你喜欢
        • 1970-01-01
        • 2013-05-09
        • 1970-01-01
        • 1970-01-01
        • 2016-01-25
        • 1970-01-01
        • 1970-01-01
        • 2012-05-10
        • 1970-01-01
        相关资源
        最近更新 更多