我正在使用Visual Studio 2017,并想测试$符号。使用下面的代码,我希望var1和var2的值不同,但它们是相同的。
.data
var1 DWORD $
var3 BYTE 16 dup (0FFh)
var2 DWORD $
这是VS在内存中显示的图像
var1的值对我有意义,但如果$应该显示下一个内存地址,为什么var2显示与var1相同?它不应该显示004068A4吗?
答案 0 :(得分:3)
.data var1 DWORD $ var3 BYTE 16 dup (0FFh) var2 DWORD $
您不会看到任何差异,因为特殊的 $ 编译时符号表示程序的代码(.code)中的当前位置。
您在.data部分使用它,它有一个单独的地址空间。