Microsoft ARM汇编程序,面向Windows Phone。我想在BSS部分创建一个长(~6KB),零位数据块。请问,这有什么好的语法? %指令不是零init,是吗?默认情况下,BSS部分是否为零?
答案 0 :(得分:1)
Microsoft的ARM汇编程序指令中的MSDN entry声明“在大多数情况下,Microsoft ARM汇编程序使用ARM汇编语言,ARM汇编程序工具指南的第7章中对此进行了介绍。” / em>的
所述指南的 Section 7.3.4涵盖了FILL
和SPACE
指令,并对此有FILL
:
{label} FILL expr {,value {,valuesize}}`
值
计算值以填充保留字节。 value是可选的,如果省略,则为0. 值 在NOINIT区域必须为0 。
这意味着如果存储块位于NOINIT区域(.bss
应该是),则它将被初始化为零。