在下新学,正在看书, 有些疑惑,基本问题望兄弟们指教 (50)

acange 2003-03-02 08:43:17
call procname


procname:
push ebp ; preserve base pointer
mov ebp, esp ; stack pointer into ebp

; write your assembler code here

mov esp, ebp ; restore stack pointer
pop ebp ; restore base pointer

ret

label:

ebp 指向何处?为何要入栈?
esp 指向何处?是不是指向刚才我push的地址(也即栈顶)?
为何他要mov ebp, esp 再mov esp, ebp, 我认为没必要把esp的内容存到ebp中啊。

在下新学,正在看书, 有些疑惑,基本问题望兄弟们指教。

同时, 谁能推荐一下汇编方面的好书。
...全文
51 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
giantzz 2003-03-02
  • 打赏
  • 举报
回复
这是建立一个程序调用时的框架堆栈帧,
push ebp ; 建立堆栈帧
mov ebp, esp


mov esp, ebp ; 取消堆栈帧
pop ebp
下面这本书有有详解,推荐:
80X86汇编语言程序设计教程 出版社: 清华大学出版社 定价: ¥39.00

本书分为三部分。第一部分是基础部分,以8086/8088为背景,以DOS和PC兼容机为软硬件平台,以MASM和TASM为汇编器,介绍汇编语言的有关概念,讲解汇编语言程序设计技术。第二部分是提高部分,以80386为背景,以新一代微处理器Pentium为目标,细致和通俗地介绍了保护方式下的有关概念,系统和详细地讲解了保护方式下的编程技术,真实和生动地展示了保护方式下的编程细节。第三部分是上机实验指导。 本书的第一部分适合初学者,可作为学习汇编语言程序设计的教材。本书的第二部分适合已基本掌握8086/8088汇编语言的程序员,可作为学习保护方式编程技术的教材或参考书,也可作为其他人员了解高档微处理器和保护方式编程技术的参考书,还可作为程序员透彻地了解Windows程序设计技术的参考书。

21,458

社区成员

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

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