在Kip irvine的书中,我看到了以下内容:
. data ?指令声明未初始化的数据。当定义一大块未初始化的数据时,.DATA?指令减少已编译程序的大小。例如,下面的代码可以有效地声明:
另一方面,下面的代码生成了一个比大20,000字节的编译程序:. data ?
bigArray DWORD 5000 DUP(?);20,000字节,未初始化
. data
bigArray DWORD 5000 DUP(?);20000字节
.data到底是什么?指令在上面的例子中做了下面的操作,使程序变小20k。
未初始化的数据不需要在编译的二进制文件中,只是操作系统加载器在运行时执行程序时分配的字节计数。