内容纲要
1.容器
2.byte ptr;word ptr;dword ptr
3.mov dword ptr ds:[0x0012ff40],[0x0012ff80]
4.内存单元与内存单元之间不可以直接赋值
详细内容
1.容器
寄存器与内存单元均可看作一个容器,容器有大小,它的存储容量有限定。如:
mov ds:[0x0012ff40],eax 把eax的值赋给以0x0012ff40为首地址的4个字节的内存单元
mov ds:[0x0012ff40],0x11223344 只改变了0x0012ff40内存单元的内容,且内容为44(默认情况下为一个字节)
2.byte ptr;word ptr;dword ptr
mov dword ptr ds:[0x0012ff40],0x11223344(四个字节)
mov word ptr ds:[0x0012ff40],0x11223344(两个节节)
mov byte ptr ds:[0x0012ff40],0x11223344(一个字节)
3.mov dword ptr ds:[0x0012ff40],[0x0012ff80]
[0x0012ff80]前面没有段寄存器,它表示的仅仅是一个立即数
一个内存单元的内容赋给另一个内存单元:
mov eax,dword ptr ds:[0x0012ff40]
mov dword ptr ds:[0x0012ff80],eax
4.内存单元与内存单元之间不可以直接赋值
Lea(LoadEffectiveAddress)的作用是获取一个内存单元的编号给了寄存器
课堂练习
mov ds:[0x0012ff40],[0x0012ff80]
mov word ptr ds:[0x0012ff40],ds:[0x0012ff50]
mov dword ptr ds:[0x0012ff40],ds:[0x0012ff50]