微机原理:什么叫SP始终指向栈顶?SP+1等不是比SP地址高吗,那SP还叫顶吗?

又SP←SP+1是什么意思,是内容还是地址变呢?... 又SP←SP+1是什么意思,是内容还是地址变呢? 展开
 我来答
greatdnl
2012-06-04 · TA获得超过264个赞
知道小有建树答主
回答量:91
采纳率:0%
帮助的人:95.5万
展开全部
SP是栈顶指针寄存器,它永远指向栈顶。你说SP+1不是比SP高吗?的确是这样啊,不过请注意两个问题:SP指的是目前数据存放在栈顶,它跟踪数据的变化,举子例子,栈就类似于装面的缸,而栈顶指针寄存器就类似于指像里面装了多少面了(注意这里的栈顶指针寄存不是指缸口)。所以SP会随着里面装的数据多少的变化而变化,它指示的是目前数据装了多少了!
第二个问题:SP←SP+1代表将栈顶指针往上移一格,相当于偏移地址变了,也举个例子,比如你找你的朋友,你记得他住2楼,结果到了楼下你给他打电话,他说他住3楼,你只有到3楼才能找到你的朋友,这里的SP就是你要找的朋友的地址,而SP+1就是你打电话问到的朋友的地址。
艾普斯
2024-07-18 广告
稳频稳压电源哪家好?艾普斯电源(苏州)有限公司开始专业研发、制造及营销交流稳压电源,满足全球电子及信息业对电源设备日益蓬勃的市场需求。迄今为止,业已发展成为交流不间断电源、稳压电源、变频电源、中频航空- 军事专用电源、直流电源、逆变电源等产... 点击进入详情页
本回答由艾普斯提供
计算机教学资源
2012-06-04 · TA获得超过515个赞
知道小有建树答主
回答量:116
采纳率:100%
帮助的人:124万
展开全部
SP是堆栈指针,它的数值表示离堆栈段地址还有多远,这就好比在一个房间里面堆1列箱子,假设堆放在一列,10个箱子即可达到天花板,首先你每次堆箱子总不会从原来箱子的底部放进去吧,总是放在这个箱子的上方,那么该位置可理解位栈顶,SP呢就表示离天花板还有多远。
这样一来,SP+1就好理解了,既然+1那就表示离天花板远了。
SP←SP+1表示你取走了一个箱子,最新的距离应该增加1,这是指的SP的内容,因为SP是堆栈指针,所以应理解为堆栈偏移地址。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
蓝人poke
2012-06-03 · TA获得超过474个赞
知道小有建树答主
回答量:441
采纳率:0%
帮助的人:138万
展开全部
栈有不同的增长方式。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式