回 帖 发 新 帖 刷新版面

主题:[em18]关于堆栈?

我是个汇编初学者,看书时看到堆栈,说时内存中开辟的一个区域,说的不是拫明白,所以想请教下它和内存有什么区别,不能用内存代替么?作用是什么?
当取堆栈中间的数据时,因为要有出栈动作,那它上面的数据也要先出栈那它们会丢失么?

回复列表 (共1个回复)

沙发

是这样的,你没明白内存和堆栈的关系,其实你所做的一切都是在内存中的,包括你开辟的数据段都是在内存中开辟的,堆栈段也是一样 ,这是系统特意从内存中划分64K字节来存放数据的,堆栈的作用是用来保护现场的,也就是把有些需要恢复的东西存到堆栈里,从堆栈中取数据是这样的,堆栈中SP始终指想栈顶,弹出时是从最上面的单元弹出的,也就是说一步步恢复的到以前的状态

我来回复

您尚未登录,请登录后再回复。点此登录或注册