汇编语言的堆栈段是什么意思
哪位高手给我指点下哈通俗点讲一下,讲的深了我听不懂的呵呵呵是不是每个汇编程序都得用到堆栈段呀?还是只是某些汇编程序才需要堆栈段,而有的不需要?谢谢啦...
哪位高手给我指点下哈 通俗点讲一下,讲的深了我听不懂的 呵呵呵 是不是每个汇编程序都得用到堆栈段呀?还是只是某些汇编程序才需要堆栈段,而有的不需要?谢谢啦
展开
7个回答
展开全部
恩,个人意见发表一下,堆栈,对于汇编来说,有系统定义的堆栈,这个不用你操心,就是你在汇编中不定义,系统也定义,这个堆栈主要是怕你调用中断啊,调用了子程序啊,他要压站,压的是cs,ip这两个数据,但是你要是自己定义了,那么你可以使用自己的,可以通过堆栈给子程序传递参数啊,或者保存一些你自己需要的数据。至于需要不,这个看你的习惯,你要很习惯利用堆栈来坐数据的转换,你就定义,要是你不喜欢,那开普通的内存空间照样搞定。凡是系统都给你提供一些工具,看你喜欢什么,就使用什么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般是局部变量需要用到堆栈
像
_MyProc proc
local @nNum:byte
.......
........
end proc
还有函数的参数。
还有CALL时要记下各寄存器的值,还有当前CS,IP的值等,都要用堆栈存储。
如果你没有子程序,没有局部变量,也许不需要用吧。不过外面的SHELL也可能要用。
像
_MyProc proc
local @nNum:byte
.......
........
end proc
还有函数的参数。
还有CALL时要记下各寄存器的值,还有当前CS,IP的值等,都要用堆栈存储。
如果你没有子程序,没有局部变量,也许不需要用吧。不过外面的SHELL也可能要用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个问题要弄懂还是要把你的课本要看全面,课本是基础,看书的时候要从头到尾的看,你心中有个整体的概念,这样理解起来就快多了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
简单的说,从C语言角度来看,函数内定义的局部变量,函数调用时的参数都是在堆栈中的。堆栈的主要功能也就是实现函数调用和返回、局部变量。
参考资料: 原创
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询