将值传递到内存位置访问装配冲突

时间:2013-01-09 15:41:33

标签: assembly access-violation masm

我将从这段代码开始:

mov   eax, 5
mov   DWORD PTR [eax], 123

我正在尝试将值123移动到地址5的内存位置,但是我得到了写访问冲突。我唯一可以猜到的是内存位置已经保留或正在使用中。但无论我使用什么地址,都是一样的。如果我要从同一地点宣读,请说:

mov   eax, 5
mov   ebx, DWORD PTR [eax]

我没有错误。我错过了什么?

(如果有帮助,我在MASM,Win 7,4 gb ram编码)

1 个答案:

答案 0 :(得分:1)

您遇到保护错误,因为您的进程不拥有该特定的地址空间。事实上,Windows的第一兆字节地址空间不受任何进程的限制。