ZKX's LAB

汇编语言堆栈的工作原理 汇编语言的堆栈段是什么意思

2021-04-05知识4

汇编语言中设置的堆栈段到底有何作用,怎样的情况下需要设置这个堆栈段? 堆栈段主2113要用于暂时保存一些数据,5261不可或缺。操作系统在把应用程4102序装入内存时,默1653认分配堆栈段与代码段同段,应用程序可以自行设置自己的堆栈段。自行设置的堆栈段大小最小4个字节,用于从应用程序返回操作系统,几乎所有的初学者不知道这个默认的、不成文的规定。只有较大的程序或递归调用较深的程序,才有必要设置独立的堆栈段;我们平时编的一些程序都不大,系统默认的堆栈空间足够使用,完全没有必要单独设置堆栈段,我在知道里回答问题所编的汇编语言程序,从不设置独立的堆栈段。

汇编语言堆栈段是什么意思 单片机的堆栈就相当于一个缓存,先进入到堆栈的数据要最后一个才能出来。

汇编语言堆栈段是什么意思 单片机的堆栈就相当于一个缓2113存,先进入到堆栈的5261数据要最后一个才能4102出来。堆栈是进入中断的1653时候用到的,单片机一旦遇到中断请求,就会去处理中断,处理完后再回来处理主程序,这样就涉及到了一个问题,单片机要保存中断之前的信息,以便处理完后能够回到主程序中,单片机会在响应中断前,把单片机现在的指针地址(也就是处理完要返回的地址),以及一些必要的数据压入堆栈(没有这些数据,单片机处理完中断后就无法确定主程序的状态)。

#汇编语言堆栈的工作原理

随机阅读

qrcode
访问手机版