码迷,mamicode.com
首页 > 其他好文 > 详细

用机器指令和汇编指令编程

时间:2018-10-26 20:40:37      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:pop   运行   结果   14.   栈的操作   技术分享   调试   数据   小结   

四.

1.

技术分享图片

技术分享图片

技术分享图片 

 技术分享图片

实验结论

技术分享图片

 2.

.技术分享图片

技术分享图片

 在运行试验2.中的两个单步运算操作后发现mov ax,2000;mov ss,ax;mov sp,10三个操作得到了运行。当只书写上述的前三个操作并运行时所得到的结果仍是相同

当未进行任何操作时该内存区域的数据如下图所示

技术分享图片

在执行两次单步运算后的相应内存区域的数据与原先的值是一样的

技术分享图片

AX,IP的值与内存单元2000:0006和2000:000A中的值是相同的

经过各种调试、对寄存器和内存的值的观察、以及翻阅课本发现

那么在单步调试的过程中计算机可能进行了压栈的操作,在此过程中计算机先将数据058D压栈随后又依次对cs和ip进行压栈操作。

五.实验小结

本次实验让我了解了栈的操作是如何进行的,利用ss和sp进行对栈空间的定义,以及利用pop和push进行出栈和入栈的操作

当进行入栈的操作是sp=sp-2,当进行出栈的操作时sp=sp+2.

疑问:实验二中为什么会发生压栈的现象

 

用机器指令和汇编指令编程

标签:pop   运行   结果   14.   栈的操作   技术分享   调试   数据   小结   

原文地址:https://www.cnblogs.com/qglqgl/p/9858380.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!