主题:LEA和MOV指令的区别
geniusgch
[专家分:0] 发布于 2006-04-20 22:52:00
不好意思,问题太肤浅了,但希望大哥们告诉我,谢谢了。[em12]
回复列表 (共17个回复)
沙发
qingfengjianke [专家分:740] 发布于 2006-04-20 23:34:00
LEA是:目的地址传送指令---- 装入有效地址.
例: LEA DX,string ;把偏移地址存到DX.
MOV是通用数据传送指令----传送字或字节.
它在存贮器和寄存器、寄存器和输入输出端口之间传送数据.
板凳
C语言爱好者 [专家分:19410] 发布于 2006-04-21 10:43:00
两者的主要区别是,LEA是汇编期的,而MOV是运行期的。LEA传送的地址在汇编期就可以计算出来,而通过MOV ... offset ..的时候,运行期才能计算出地址,因此LEA比MOV要快。通常优先使用LEA。
3 楼
geniusgch [专家分:0] 发布于 2006-04-24 12:39:00
知道了,谢谢
4 楼
blueskyhao [专家分:100] 发布于 2006-04-26 22:23:00
c语言爱好者是不是老师啊?怎么什么东知道,太牛了~~
5 楼
niuyuelei [专家分:90] 发布于 2006-04-28 20:32:00
就是哦,人家才是真正的高手哦!^_^
6 楼
huxiaofeng [专家分:0] 发布于 2006-05-01 23:18:00
够厉害!!跟你学了
7 楼
Canching [专家分:0] 发布于 2006-06-08 14:31:00
请问in和mov的区别又是什么
8 楼
chenzep [专家分:3640] 发布于 2006-06-08 18:08:00
应该是MOV ... offset ..是编译期间完成的,而LEA指令是运行期间完成的。
LEA指令比MOV ... offset ..指令强大,但效率比MOV ... offset ..指令低。
我们通常使用MOV ... offset ..指令。
9 楼
船尾跳鱼 [专家分:0] 发布于 2006-06-08 20:05:00
第八楼说的对
10 楼
llydd [专家分:200] 发布于 2006-06-10 00:16:00
但是一般mov....offset指令占用字节数比lea占用的多啊
我来回复