社区
汇编语言
帖子详情
LEA指令请教一下
cc8476
2012-03-29 11:11:17
查了很多的BAIDU,发现说的都不太一样,所以再来请教一下
我看到一条说:
lea ecx,[eax+0x30]
相当于:
mov ecx,0x30
add ecx,eax
是这样吗?是的话,那么也可以用
mov ecx,0x30+eax 不可以吗?非要用这样的形式?
非常迷惑啊
...全文
182
4
打赏
收藏
LEA指令请教一下
查了很多的BAIDU,发现说的都不太一样,所以再来请教一下 我看到一条说: lea ecx,[eax+0x30] 相当于: mov ecx,0x30 add ecx,eax 是这样吗?是的话,那么也可以用 mov ecx,0x30+eax 不可以吗?非要用这样的形式? 非常迷惑啊
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
小么小儿郎
2012-03-29
打赏
举报
回复
lea指令相比mov指令数目少,速度快,是编译器优化的结果,楼主的写法可以,但是性能和lea相比不给力的。
gsy999
2012-03-29
打赏
举报
回复
[Quote=引用楼主 的回复:]
查了很多的BAIDU,发现说的都不太一样,所以再来请教一下
我看到一条说:
lea ecx,[eax+0x30]
相当于:
mov ecx,0x30
add ecx,eax
是这样吗?是的话,那么也可以用
mov ecx,0x30+eax 不可以吗?非要用这样的形式?
非常迷惑啊
[/Quote]
LZ,你想像的不错,LEA常被用将四则运算表达式的值赋给一个寄存器.
为了法克方便面
2012-03-29
打赏
举报
回复
数据传送指令 MOV
格式: MOV OPRD1,OPRD2
功能: 本指令将一个源操作数送到目的操作数中,即OPRD1<--OPRD2.
说明:
1. OPRD1 为目的操作数,可以是寄存器、存储器、累加器.
OPRD2 为源操作数,可以是寄存器、存储器、累加器和立即数.
2. MOV 指令以分为以下四种情况:
<1> 寄存器与寄存器之间的数据传送指令
<2> 立即数到通用寄存器数据传送指令
<3> 寄存器与存储器之间的数据传送指令
<4> 立即数到存储器的数据传送
3. 本指令不影响状态标志位
有效地址传送指令 LEA
格式: LEA OPRD1,OPRD2
功能: 将源操作数给出的有效地址传送到指定的的寄存器中.
说明:
1. OPRD1 为目的操作数,可为任意一个16位的通用寄存器.
OPRD2 为源操作数,可为变量名、标号或地址表达式.
示例: LEA BX,DATA1
LEA DX,BETA[BX+SI]
LEA BX BX,[BP],[DI]
2. 本指令对标志位无影响。
用lea,一条指令就可以了
cc8476
2012-03-29
打赏
举报
回复
可能还理解不了性能上的优化怎么样先
反正我就先认为是mov 的优化版好了
XLAT
指令
LEA
指令
DB
指令
DW
指令
xlat查表
指令
一、
指令
作用 AL <— DS:[AL+BL] 二、 使用方式 初始化AL 初始化BX 查表 三、 举例: MOV AL = X MOV BX = 03H XLAT 四、 注意: DS指的是段首地址,存放在BX当中,不一定是DS(数据段寄存器),可以是自己定义的堆栈的首地址 BX中一般存放数据。而是存放数据段的段首地址或段寄存器的值; 举例: 在下面的例子中...
天线开路短路检测原理_
LEA
-5S的天线开路检测问题
LEA
-5S是需要外部线路来检测有源天线开路问题的,有一个AADET0脚来检测。实验中发现LES-5S默认是有短路输出的,但是没有开路输出,我接了外部电路,开路时AADET0是高电平。但是NEMA语句并没有开路输出。短路时NEMA是有输出的。在网上搜索了
一下
,只发现飞扬科技曾讨论过这个问题。但是实验结果和他说的不一样。飞扬科技说短路和开路都没有输出。也下了个U-center,进行设置,但是似乎没有...
20145205 《信息安全系统设计基础》第5周学习总结
教材学习内容总结 程序编码 GCC将源代码转化为可执行代码的步骤: C预处理器——扩展源代码-生成.i文件 编译器——产生两个源代码的汇编代码-——生成.s文件 汇编器——将汇编代码转化成二进制目标代码——生成.o文件 链接器——产生可执行代码文件 机器级代码 1.机器级编程的两种抽象(1)
指令
集结构ISA是机器级程序的格式和行为,定义了处理器状态、
指令
的...
计算机系统基础二进制炸弹,【求解】二进制炸弹
该楼层疑似违规已被系统折叠隐藏此楼查看此楼图片和文字版都发在这里了
请教
大神讲解我把我看得出来的都加了【-】注释 不对的也请指出08048c06 :8048c06:83 ec 1c sub $0x1c,%esp8048c09:8d 44 24 08
lea
0x8(%esp),%eax8048c0d:50 ...
高手过招:
请教
:变量到底是在编译的时候初始化的,还是在运行的时候初始化的?
请教
:变量到底是在编译的时候初始化的,还是在运行的时候初始化的? [问题点数:40分,结帖人
lea
rnc2015] https://bbs.csdn.net/topics/391832733 收藏帖子 回复
lea
rnc2015 结帖率 62.5% 变量到底是在编译的时候初始化的,还是在运行的时候初始化的? 如下函数:居然调用两次打印出来的值分别是1和2,非常不好理解 如果按照C...
汇编语言
21,499
社区成员
41,617
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章