NASM中的等效MASM .const部分

问题描述 投票:0回答:1

下面的MASM代码与NASM完全一样的是什么?

; Simple lookup table (.const section data is read-only)
      .const
const_array dword 0, 1, 1, 2, 3, 5, 8, 13, 21
assembly x86-64 nasm masm
1个回答
3
投票

因为.const MASM指令表示只读段,所以您必须使用等效于NASM的section .rdata 1,该段创建的段/节可读但不可写。” >

您可以使用DD指令在任何地方放置DWORD;参见手册的Section 3.2.1

最终结果可能看起来像这样:

section .rdata
  const_array:   dd 0, 1, 1, 2, 3, 5, 8, 13, 21

在NASM中始终建议使用标签名称后的A :

[当该行上的第一个标记未被识别为指令助记符时,NASM将假定它是一个标签。但是,始终使用:来明确表示这是一个好习惯。


脚注1:

Windows使用.rdata。其他一些操作系统(包括Linux)将section .rodata用于只读的不可执行数据。

© www.soinside.com 2019 - 2024. All rights reserved.