总结一下汇编中mov,lea指令的区别 | 您所在的位置:网站首页 › 汇编mov和lea › 总结一下汇编中mov,lea指令的区别 |
最近在学习汇编语言,过程中遇到很多问题,对此在以后的随笔会逐渐更新,这次谈谈mov,lea指令的区别 一,关于有没有加上[]的问题 1,对于mov指令来说: 有没有[]对于变量是无所谓的,其结果都是取值 如: num dw 2 mov bx,num mov cx,[num];bx=cx=2 对于寄存器而言,有[]表示取地址,没[]表示取值 如: num dw 2 mov ax,num mov bx,ax;bx=2 mov bx,[ax];mov bx;DS:[ax],这里可能存在报错的情况,总之大体意思能理解就行 2,对于lea指令来说: 有没有[]对于变量是无所谓的,其结果都是取变量的地址,相当于指针(与mov相反) 如:num dw 2 lea ebx,num; lea eax,[num];ebx=eax 对于寄存器而言,有[]表示取值,没[]表示取地址 如:mov eax,2 mov ebx,[eax];ebx=2 mov ebx,eax;eax=地址,随程序的不同而不同 |
CopyRight 2018-2019 实验室设备网 版权所有 |