-1

Microsoft ARM 汇编程序,针对 Windows Phone。我想在 BSS 部分创建一个长(~6KB)的零初始化数据块。请问,什么是好的语法?% 指令不会零初始化,是吗?BSS 部分是否默认为零初始化?

4

1 回答 1

1

微软的 ARM 汇编器指令的MSDN 条目指出,“在大多数情况下,微软的 ARM 汇编器使用 ARM 汇编语言,该语言在 ARM 汇编器工具指南的第 7 章中有说明。”

所述指南的第 7.3.4 节涵盖了FILLandSPACE指令,并且有这样的说法FILL

{label} FILL expr{,value{,valuesize}}`

value
   计算为填充保留字节的值。value 是可选的,如果省略,则为 0。在 NOINIT 区域中 value 必须为 0

这意味着如果内存块位于 NOINIT 区域(.bss应该是),它将被零初始化。

于 2013-06-29T14:19:49.260 回答