lea dx 和 lea si 的区别

QMCY_jason 2009-05-06 11:25:20
一般保存字符串的地址时都是lea si,str(str是一个字符串)
很偶然 在一个hello world的程序中
看到 这样用lea dx,str,不是很明白
还有就是为什么hello world的结尾要 加一个 $
小弟是初学汇编,还望不要见笑。
...全文
1118 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xd217 2009-05-08
  • 打赏
  • 举报
回复
盗版一楼的,+改点

DOS中断,输出字符串,要求字符串以$结尾['这里应该是DOS中断的要求。'];另外,lea dx, str和lea si, str; 都是将str地址送寄存器,只是一个送dx,另一个送si;
coohai 2009-05-07
  • 打赏
  • 举报
回复
DOS中断中使用它而已,我们只是使用中断,遵从它的规定即可。
如果自己使用指针,自己输出,当然是si好些,但差别不太,就差一个语句mov ?, ?而已;
QMCY_jason 2009-05-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 coohai 的回复:]
DOS中断,输出字符串,要求字符串以$结尾;另外,lea dx, str和lea si, str; 都是将str地址送寄存器,只是一个送dx,另一个送si;
这里送到dx,应该是DOS中断的要求吧。
[/Quote]
你的意思是DOS中断要求DX?
我看书上号多的例子都是lea si,str
况且,这里si应该是作为存储器指针使用的,dx好像不能作为存储器指针使用,还是没明白。
nanlingcg 2009-05-07
  • 打赏
  • 举报
回复
1楼说的很详细!
array020 2009-05-07
  • 打赏
  • 举报
回复
就跟调用API似的,都是规定好的。
你也可以自己写个子程序,规定以0结尾。
nokor517 2009-05-07
  • 打赏
  • 举报
回复
学习力呵呵,
coohai 2009-05-07
  • 打赏
  • 举报
回复
DOS中断,输出字符串,要求字符串以$结尾;另外,lea dx, str和lea si, str; 都是将str地址送寄存器,只是一个送dx,另一个送si;
这里送到dx,应该是DOS中断的要求吧。

21,497

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧