您好、欢迎来到现金彩票网!
当前位置:大发体育在线 > 指令栈 >

看51的汇编的堆栈操作指令的一个问题

发布时间:2019-07-10 10:31 来源:未知 编辑:admin

  POP SP 这句就改变了栈顶指针的值 为什么要这么做呢?栈顶指针这么一跳 中间的数据就不管了吗?

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

  展开全部这是出栈指令了,进栈出栈的作用是保护之前的数据不被丢失。寄存器不够用时而还要用它来执行其他的指令,首先让它进栈,然后这个寄存器可以用来干其他的事,然后出栈时这个寄存器原先进栈之前的数据不会丢失更多追问追答追问1 这种进栈出栈是函数调用和中断时才会出现的吗

  2 是不是在每一次进栈时 都会保存寄存器的值跟SP的值? ps:因为我理解不了:如果你有中断,你就进栈保存当前寄存器的值就好啦,SP指向栈顶;等中断结束返回SP下降,弹栈出数据回寄存器。 这个步骤怎么会去修改SP的值呢?追答堆栈区在片内RAM30H-7FH之间,遵循先进后出原则,进栈堆栈指针SP自动加1,出栈SP自动减1,不需要你自己去修改追问那为什么我在书上看到这段程序

http://cajonbrush.com/zhilingzhan/245.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有