x86 程序集 - $ 未显示正确的地址

x86 Assembly - $ not displaying correct address

我正在使用 Visual Studio 2017,想测试 $ 符号。使用以下代码,我希望 var1 和 var2 的值不同,但它们是相同的。

.data
var1 DWORD $
var3 BYTE 16 dup (0FFh)
var2 DWORD $

这是 VS 在内存中显示的图像

var1 的值对我来说有意义,但如果 $ 应该显示下一个内存地址,为什么 var2 显示与 var1 相同的 this?它不应该显示 004068A4 吗?

.data
var1 DWORD $
var3 BYTE 16 dup (0FFh)
var2 DWORD $

您不会看到任何差异,因为特殊的 $ 编译时符号表示 code (.code ) 的程序。

在这里,您在具有单独地址 space.

的 .data 部分中使用它