内存

每个应用程序都有4GB的独立运行空间

4G=4096MB=4194304KB=4294967296B=34359738368bit换算成十六进制是800000000bit=100000000B=(FFFFFFFF+1)B

而FFFFFFFF即32位的内存地址,寻址宽度为32位,所以每个应用程序都有4GB的独立运行空间

 

所以一个进程的编号一般为0x00000000-0xFFFFFFFF

用mov指令把数据写进内存

mov byte ptr ds:[0xXXXXXXXX],1   将数据宽度为byte(8位)的1写入地址为0xXXXXXXXX的内存中

mov word ptr ds:[0xXXXXXXXX],1   将数据宽度为word(16位)的1写入地址为0xXXXXXXXX的内存中

mov dword ptr ds:[0xXXXXXXXX],1   将数据宽度为dword(32位)的1写入地址为0xXXXXXXXX的内存中

用mov指令实现  立即数到内存

         寄存器到内存

         内存到寄存器

         内存到内存(大部分指令不可以实现,但还是有可以的)

 

 

5种表示内存的形式

  1.[立即数]    [0xXXXXXXXX]

  2.[寄存器]    [reg]   如  [EAX]、[EBX]、[ECX]

  3.[寄存器+立即数]  [reg+0xXXXXXXXX]

  4.[寄存器+寄存器*{1,2,4,8}]  [reg+reg*4]

  5.[寄存器+寄存器*{1,2,4,8}+立即数]  [reg+reg*4+0xXXXXXXXX]

posted on 2020-02-15 23:31  没有感情的rainbow  阅读(555)  评论(0)    收藏  举报