求助!汇编语言MOV问题!

abcDB100dup(?)movcx,100leabx,abc第三句可以写成movbx,abc吗?为什么?还有就是加中括号和不加中括号有什么区别?老是搞不清!小弟刚刚开... abc DB 100 dup(?)
mov cx, 100
lea bx, abc
第三句 可以写成 mov bx, abc 吗?
为什么?
还有就是加中括号 和 不加中括号有什么区别?
老是搞不清!小弟刚刚开始学习汇编语言!请前辈解答!谢谢!!
展开
 我来答
noodlest
2011-07-20 · TA获得超过785个赞
知道小有建树答主
回答量:724
采纳率:100%
帮助的人:719万
展开全部
1、我觉得不可以。
2、LEA是传操作数地址,mov是移动念扮地址中的数据(当然,这伏氏个数据还可能为一个地址)
3、中括号表示间接寻址,对应寄存器中数据为二级地址,然后从二仔厅灶级地址中取出存储的数据。
4、期待其它答案。

其它参考信息:
0.LEA指令具有单时钟周期,执行效率很高。
1.它是CPU地址生成单元参与运算的,而不是ALU参与运算的,所以在流水线上不会与上下文的算术逻辑指令产生流水相关
2.INTEL指令集中不存在很多RISC机器所具有的三操作数算术运算指令,比如像ARM的"add r0,r1,r2",而LEA指令恰好提供了同样的功能,以模拟“三元算术逻辑指令”。
举个例子,要计算两个寄存器的和,但又不想破坏原来的值,那么可以执行lea ebx ,[eax+edx], 这条指令,执行的就是 ebx = eax + edx 这条加法运算。如果用add指令,则不可能一条指令内完成。
3.在汇编语言程序设计中,在需要取得一个变量地址时,使用LEA是很方便的。而MOV指令则常常出错,因为在微软MASM汇编语法中,label和variable是不同的。

lea eax,[esp+44]的功能就是eax=esp+44
这样的格式出现
是因为mov指令不支持mov reg,reg+immed这样的格式
当然也可以用lea来进行快速加法、乘法......
ZESTRON
2024-09-04 广告
电子失效分析是指对电子元件或系统进行系统调查,以确定失效原因。通过显微镜、光谱学和电气测试等技术,分析人员可以查明导致故障的缺陷或问题。此过程包括检查物理损坏、分析电气特性和进行环境测试以确定根本原因。电子故障分析在半导体制造、汽车电子和消... 点击进入详情页
本回答由ZESTRON提供
panhongfeng3
2011-07-20 · 超过13用户采纳过TA的回答
知道答主
回答量:37
采纳率:0%
帮助的人:31.5万
展开全部
不行的,lea是加禅卖答载有效地址,mov是移动地址里面的值到寄存器里面
mov bx,abc是将abc里面的值放到bx中
mov bx,【abc】配改是将abc里面的值所指向的地址的值放贺慧到bx中
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式