社区
汇编语言
帖子详情
关于堆栈的一点疑惑?
voidpointer
2007-12-08 11:18:07
一般一个汇编程序都有一个堆栈段,比如用以下语句定义:
STACK1 SEGMENT STACK
256 dup (?)
STACK1 ENDS
我的疑惑就是当用指令call调用子程序的时候,先要push ip,这个ip是不是保存在这个定义的堆栈中呢?
...全文
118
3
打赏
收藏
关于堆栈的一点疑惑?
一般一个汇编程序都有一个堆栈段,比如用以下语句定义: STACK1 SEGMENT STACK 256 dup (?) STACK1 ENDS 我的疑惑就是当用指令call调用子程序的时候,先要push ip,这个ip是不是保存在这个定义的堆栈中呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhanzhenbo
2007-12-09
打赏
举报
回复
是的。
当调用一个函数的时候。
1:调用方把参数反序压入堆栈中。
2:调用函数
3:恢复堆栈。
而被调用方需要保存EBP等值,用的就是这个堆栈,在执行
完成后将恢复
czlyc006
2007-12-09
打赏
举报
回复
call指令等价于 push (eip+1)
jmp (子程序处)
ret指令等于 pop eip (虽然实际程序中不能这么写)
「已注销」
2007-12-09
打赏
举报
回复
是的. 只不过在压入栈的时候,压入的是 EIP+1 , 恢复的时候,EIP+1弹出,从这里开始继
续执行.
数据结构 | 后缀表达式【深入剖析
堆栈
原理】
本文详细介绍了如何使用
堆栈
实现中缀表达式到后缀表达式的转换及求值过程,通过具体实例展示了算法原理。
一文扫清对 JavaScript 中的
疑惑
本文深入解析JavaScript中的核心概念,如执行上下文、作用域、词法环境与变量环境的区别,探讨RHS与LHS查询机制,揭示闭包的本质,以及函数中的this绑定规则。通过实例演示,帮助读者理解编译过程、作用域链、
堆栈
内存及函数执行流程。
堆栈
的分类
本文介绍了ARM处理器中的四种
堆栈
工作方式:满递减
堆栈
(FD)、满递增
堆栈
(FA)、空递减
堆栈
(ED)和空递增
堆栈
(EA),并详细解释了满递减
堆栈
的工作原理及ARM指令集中的
堆栈
操作。
单片机裸机的
堆栈
,与RTOS 里面提到的
堆栈
,分别指的是什么?
本文详细介绍了FreeRTOS在
堆栈
管理上的运用,对比了静态和动态创建任务的区别。静态创建任务消耗bss段空间,而动态创建则通过全局数组ucHeap进行堆分配。同时,讨论了MCU+RTOS系统中的双
堆栈
机制,强调了增大主
堆栈
大小对线程
堆栈
无效。此外,还讲解了C内存布局的各段作用,包括text、data、bss、堆和栈,并展示了在Keil MDK和GCC环境下如何调整
堆栈
大小。
天天记录 - Android invalidate流程方法调用
堆栈
分析
本文详细解析了点击按钮导致背景切换时,Android系统中的invalidate流程,包括源码调用路径、
疑惑
点及关键步骤分析。通过跟踪方法调用
堆栈
,深入理解了从触发onTouchEvent到最终调用onDraw的整个过程。
汇编语言
21,500
社区成员
41,617
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章