在Kip Irvines的书中,我发现了以下内容:
.DATA?指令声明未初始化的数据。在定义大块未初始化数据时,.DATA?指令减少了编译程序的大小。例如,以下代码被有效声明:
。数据?
bigArray DWORD 5000 DUP(?); 20,000字节,未初始化
另一方面,以下代码生成一个已编译的程序20,000字节更大:
。数据
bigArray DWORD 5000 DUP(?); 20,000字节
.data究竟是什么?在上面的例子中做了引导,使程序缩小了20k。
答案 0 :(得分:5)
未初始化的数据不需要在编译的二进制文件中,只需要OS加载程序在执行程序时在运行时分配的字节数。