汇编语言中的堆栈问题
在汇编中进栈和出栈后其sp会发生移动,对于出栈以后的sp通常是下降?其间出现了高低地址……高低地址是什么意思?在进栈和出栈执行操作中sp←(sp)—2是什么意思?为什么是...
在汇编中进栈和出栈后其sp会发生移动,对于出栈以后的sp通常是下降?其间出现了高低地址……高低地址是什么意思?在进栈和出栈执行操作中sp←(sp)—2是什么意思?为什么是2?((sp)+1,(sp))←(src)又是什么意思?汇编语言程序设计(沈美明第二版)P49.谢谢哈……
展开
2个回答
2013-12-14
展开全部
16位段地址编址从0x0到0xffff,地址小的叫低地址,地址大的叫高地址。sp←(sp)—2意思是把sp寄存器值减去2送回到sp寄存器中。((sp)+1,(sp))←(src)的意思是把src的内容(两个字节),送到sp和sp+1所址向的两个字节的存储空间中去,src低字节内容到(sp)指向的内存地址空间,高字节内容到(sp)+1所指的内存地址空间。这里的sp和c语言的指针有点类似,慢慢体会吧。
2013-12-14
展开全部
这里的进栈出栈操作是针对一个字进行操作的,而一个字占了16位,也就是两个字节,自然就会有高低地址了,这里的-2操作也是一样的,因为是一个字,所以要-2,src是源操作数的意思
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询