当前位置: 代码迷 >> 汇编语言 >> 请问,默认的栈在哪里啊
  详细解决方案

请问,默认的栈在哪里啊

热度:289   发布时间:2016-05-02 04:55:51.0
请教,默认的栈在哪里啊?
我看教科书上的例子,都没有指定ss和sp,就用push和pop暂存数据了。
这么用对么?
这个情况下栈在哪里啊?

我看debug里,exe程序载入内存的时候,默认ss和cs是一样的,sp为0。
也就说栈和程序在一个段里,代码从0往FFFFh增加,栈从FFFFh向0减少。
那么会不会程序和栈长到一定程度,导致栈覆盖程序?

------解决方案--------------------
就是这样的,确实这样的话它们是可能重叠而发生问题的;所以,缺省的栈设置只适合简单的、普通的程序,对规模比较大、内存使用复杂的程序,就应该定义自己的堆栈段,从而避免这些问题的产生。
  相关解决方案