QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1056|回复: 3

汇编问题请教

[复制链接]
发表于 2004-1-8 12:55:46 | 显示全部楼层 |阅读模式
push ebp
mov ebp,esp
mov esi,[ebp+8]
mov eax,[esi]
add eax,1
mov [esi],eax
pop ebp
ret
请问,如何理解第3句中esi和第4句中[esi],加[ ]到底意味着什么?[ebp+8]n呢?
谢谢
发表于 2004-1-8 13:38:45 | 显示全部楼层
好好看一看《IBM-PC汇编语言》
这是函数调用的问题。
回复

使用道具 举报

发表于 2004-1-8 14:09:24 | 显示全部楼层
push ebp
mov ebp,esp
......
pop ebp
ret
以上是堆栈方式函数调用的标准方式;

[ebp+8]是调用函数通过堆栈传进来的参数;

mov esi,[ebp+8]是将此参数放到esi寄存器中;

[esi]表示是esi寄存器中的值所代表的内存中内容,由此可见,[ebp+8]传进来的是一个指针。
回复

使用道具 举报

发表于 2004-1-9 10:42:57 | 显示全部楼层
我发现这里的人大部分都很差,帮她解决问题连句感谢的话都没有,真的很让人失望。。。。。。。。。。。。。。。。。。。。。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-16 09:43 , Processed in 0.038304 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表