内存地址的五种形式

本文最后更新于:3 years ago

这里写一下内存地址的五种读取内存的值和向内存中写入数据的方法,一方面对于初学汇编指令的人,还是有一定帮助的。
另一方面记录一下以后还可以翻回来复习一下。

1、形式一:[立即数]

读取内存的地址:
mov exa,dword ptr ds:[0x13FFC4]

向内存中写入数据:
mov dword ptr ds:[0x13FFC4],eax

2、形式二:[reg]

reg代表寄存器 可以是8个通用寄存器中的任意一个

读取内存的值
mov ecx,0x13FFD0
mov eax,dword ptr ds:[ecx]

向内存中写入数据
mov ecx,0x13FFD0
mov dword ptr ds:[ecx],0x87654321

3、形式三:[reg+立即数]

读取内存的值:
mov ecx,0x13FFD0
mov eax,dword ptr ds:[ecx+4]

向内存中写入数据:
mov edx,0x13FFD0
mov dword ptr ds:[edc+0xC],0x87654321

4、形式四:[reg+reg*(1,2,4,8}]

读取内存的值:
mov eax,13FFD0
mov ecx,2
mov edx,dword ptr ds:[eax+ecx*4]

向内存中写入数据:
mov eax,13FFD0
mov ecx,2
mov dword ptr ds:[eax+ecx*4],87654321

5、形式五:[reg+reg*{1,2,4,8}+立即数]

读取内存的值:
mov eax,13FFD0
mov ecx,2
mov edx,dword ptr ds:[eax+ecx*4+4]

向内存中写入数据:
mov eax,13FFD0
mov ecx,2
mov dword ptr ds:[eax+ecx*4+4],87654321


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!