搜索
当前位置: sk彩票 > 堆栈 >

关于8086中堆栈段的问题

gecimao 发表于 2019-07-19 22:06 | 查看: | 回复:

  堆栈段到底用来做什么的,能否给一个很明白的解释,书也看过了,网上也找过类似的答案了,还是不清楚,我想问的是堆栈段中是不是可以定义变量?还是仅仅申请一个堆栈空间,系统自动将...

  堆栈段到底用来做什么的,能否给一个很明白的解释,书也看过了,网上也找过类似的答案了,还是不清楚,我想问的是堆栈段中是不是可以定义变量?还是仅仅申请一个堆栈空间,系统自动将变量或函数返回值等分布到堆栈空间中去,可以具体举个例子哈,谢谢,本人才学习8086。

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  CS和IP确定的段是程序代码段,一放用来放程序的。DS确定的段是数据段,一般用来定义变量、存的数据。而堆栈一般是用来暂存一些数据的,用的最多的时候是中断,本来CPU在执行一个程序(A),突然有另外一个程序(B)要打断CPU执行A,转去执行(B),因为两个程序都要用CPU里面的寄存器,故想执行完B后转回来接着执行A,就得在响应中断程序前先把A状态断点处的寄存器保存起来,而一般会保存在这个区,当执行完B后接着执行A时把这些保存的寄存器值恢复成原来状态,接着执行A(这个保存寄存器的过程就跟你在看书突然又去接电话,在接电话前先把书折起来是一样的,保存一下原来状态)。你问的定义变量一般会分配到数据区。仅是申请一个空间,当遇到相应的PUSH,POP指令时,会自动的把数据压入这个区

本文链接:http://moodyjews.net/duizhan/883.html
随机为您推荐歌词

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | 站点统计 | 网站地图

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2012-2013 织梦猫 版权所有  Powered by Dedecms 5.7
渝ICP备10013703号  

回顶部