中易网

在用汇编语言编程时,程序调用与堆栈如何使用?

答案:4  悬赏:0  
解决时间 2021-02-15 23:01
在用汇编语言编程时,程序调用与堆栈如何使用?
最佳答案
汇编许久不用,只能凭印象说下:
程序调用使用 Call

以状态字PSW入栈为例
PUSH PSW
POP PSW

如果不是问语法,或者是汇编的使用技巧,去CSDN论坛 汇编区 提问吧,5分钟内即有回答。
百度的问答范畴太广,没有针对性,呵呵。
全部回答
程序调用分远程调用和进程调用 先定义函数 PROC (far) aa(程序名) ... ret // 结束 调用 call (far) aa 作用类似于c中的函数 堆栈push ax pop ax 因为寄存器有限,而一个程序要多次调用相同的寄存器,所以要将寄存器中的数据入栈保存起来 ,等程序结束时再将数据出栈继续之前的程序。
标准c参数压栈次序是反向压栈,也就是从右到左。因为c要把不定参数...放在最右边,为了高效率定位参数,所以只能从右到左压栈,这样第一个参数最靠近栈顶。 比如printf (const char * szformat,...);如果从左到右压不容易找到第一个参数szformat 不过16位操作系统的时候,调用api函数时,微软的vc曾经支持过一种从左到右的压占次序,现在32位系统没有了。
程序调用用call指令,调用的子程序必须已经写在程序里。 系统会自动把子程序的返回地址(即调用程序中call指令的下一条指令的地址)存入堆栈,子程序执行后也会自动把堆栈中存的地址取出。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
2011年据说清明节和三月初三赶到一起了,谁知
博缘兵乓球馆地址好找么,我有些事要过去
中炮盘头马如何破解
繁昌工业园区社区居委会地址在什么地方,想过
园丁二区地址有知道的么?有点事想过去
平坝县齐伯中学地址在什么地方,我要处理点事
不想笑但装笑,用什么带笑的词语形容
完形填空He asked her to marry him .She fel
中国联通乒乓球俱乐部地址在什么地方,想过去
北陡社区居委会地址在哪,我要去那里办事
平平加0-15与0-25有什么区别
理发店取名字
官洲村地址好找么,我有些事要过去
新塘社区居委会地址有知道的么?有点事想过去
新时速货运地址好找么,我有些事要过去
推荐资讯
风采照相馆(工业北路)地址在哪,我要去那里办
真人CS拓展俱乐部地址在什么地方,我要处理点
1983武术俱乐部巴西柔术儿童班地址在哪,我要
森宝参茸土特产地址在哪,我要去那里办事
长安驾校报名点(上海长宁)地址在哪,我要去那
宝安区松岗街道楼岗大道到横岗荷坳怎么去!
茶子山背怎么去啊,有知道地址的么
one-million dollar还是one-million dollars
养殖场名字胜源好不好
事赢宾馆在什么地方啊,我要过去处理事情
比如邯郸的机动车牌分县吗
魏文侯时,西门豹为邺令。豹往到邺,会长老,
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?