代码改变世界

汇编实验5

2018-11-23 14:36  漠然飘过  阅读(200)  评论(0编辑  收藏  举报

实验一

调试如下:

  

(1)data段中数据为:23 01 56 04 89 07 BC 0A EF 0D ED 0F BA 0C 87 09

(2)cs=0772,ss=0771,ds=0770

(3)在程序返回前,cs=0072、ss=0071、ds=0070。所以应填 x-2,x-1。

 

实验二

代码:

进行调试如下:

(1)data段中的数据为:   23, 01, 56, 04

(2)程序返回前cs=0772,ss=0771,ds=0770

(3)data段地址为x-2,stack段的段地址为x-1

 (4)实际占有的空间为(?) 不懂

 

实验三

代码:

调试如下:

(1)data段中的数据为:   23, 01, 56, 04

(2)程序返回前cs=0770,ss=0774,ds=0773

(3)code段的地址为x,则data段地址为 x+3,stack段的段地址为 x+4

 

实验四

只有第三个可以运行

调试如下:

原因可能是和程序的入口的位置有关吧。

 

实验五

代码:

调试如下:

 

 

 

 

相加前:

相加后:

 

实验六

代码:

 调试如下:

 

 

总结

通过本次实验,我了解了如何在代码中使用栈,将数据、代码、栈放入不同段的程序的编写以及调试,而且我还学习了如何编写调试具有多个段的程序。有些知识点和操作还是很生疏,还有待提高。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

---恢复内容结束---