mov eax如何将数据存储在内存中?
问题描述:
我有以下装配命令:mov eax如何将数据存储在内存中?
mov eax, 10001
mov [eax], DEADCODEh
我所知道的是
- 我说的是X86
- EAX有32位
- 我要保持小尾数记住
那么内存是怎么样的呢? 整个十六进制数是否存储在10001或只有一部分? 取决于那些地址10002,10003和10004是怎么样的?
答
的代码做以下的事情:
- 负载
eax
与值10001(十进制)。这是十六进制的0x2711。eax
的值现在是0x00002711。注意前导零作为eax是一个32位寄存器。 -
将值0xdeadc0de(注意,您错误地复制/粘贴的0)存储在
eax
中包含的地址的内存中。由于字节顺序是小端,10001左右的内存都将有以下内容:10001: 0xde 10002: 0xc0 10003: 0xad 10004: 0xde
你为什么不尝试,找出? – Iridium