我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:2019跑狗图高清彩图 > 栈底 >

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

归档日期:08-07       文本归类:栈底      文章编辑:爱尚语录

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

  展开全部SP是栈顶指针寄存器,它永远指向栈顶。你说SP+1不是比SP高吗?的确是这样啊,不过请注意两个问题:SP指的是目前数据存放在栈顶,它跟踪数据的变化,举子例子,栈就类似于装面的缸,而栈顶指针寄存器就类似于指像里面装了多少面了(注意这里的栈顶指针寄存不是指缸口)。所以SP会随着里面装的数据多少的变化而变化,它指示的是目前数据装了多少了!

  第二个问题:SP←SP+1代表将栈顶指针往上移一格,相当于偏移地址变了,也举个例子,比如你找你的朋友,你记得他住2楼,结果到了楼下你给他打电线楼才能找到你的朋友,这里的SP就是你要找的朋友的地址,而SP+1就是你打电话问到的朋友的地址。

  展开全部SP是堆栈指针,它的数值表示离堆栈段地址还有多远,这就好比在一个房间里面堆1列箱子,假设堆放在一列,10个箱子即可达到天花板,首先你每次堆箱子总不会从原来箱子的底部放进去吧,总是放在这个箱子的上方,那么该位置可理解位栈顶,SP呢就表示离天花板还有多远。

  SP←SP+1表示你取走了一个箱子,最新的距离应该增加1,这是指的SP的内容,因为SP是堆栈指针,所以应理解为堆栈偏移地址。

本文链接:http://apawoodbury.com/zhandi/443.html