NASM对齐属性默认值

时间:2014-06-24 21:45:12

标签: assembly nasm

我在NASM手册中读到,align属性指定段起始地址的低位必须强制为零。

引用

  

如上所示,使用ALIGN来指定。的低位数   段起始地址必须强制为零。对齐值   给定可以是1到4096之间的任何2的幂;在现实中,唯一的   支持的值为1,2,4,16,256和4096,因此如果指定了8   它将被舍入到16,并且32,64和128都将被舍入   到256,依此类推。请注意,对齐到4096字节边界是一个   PharLap扩展到格式,并非所有人都支持   接头

LINK

如果未指定任何align属性,则被视为0或1?

2 个答案:

答案 0 :(得分:0)

对于支持align的其他格式,链接的文档页面列出了默认值。对于bin格式,它没有,但快速检查(您可以轻松执行)会显示它4

答案 1 :(得分:0)

使用“org”指令自我对齐:

START:

org START + ((($-START)/8)*8)+8

org START + ((($-START)/32)*32)+32

org START + ((($-START)/128)*128)+128