码迷,mamicode.com
首页 > 编程语言 > 详细

汇编语言实验五

时间:2018-11-25 22:25:56      阅读:287      评论:0      收藏:0      [点我收藏+]

标签:http   代码   反汇编   code   结果   新建   技术   img   编写程序   

练习一:

创建aaa.asm并输入指定代码段:

技术分享图片

汇编连接:

技术分享图片

debug运行并用R命令查看:

技术分享图片

反汇编:

技术分享图片

用G命令运行到mov ax,4c00之前:

技术分享图片

查看内存内容:

技术分享图片

①程序返回前,data段的段地址为075A

②程序返回前,CS=076C,SS=0769,DS=075A

③程序加载后,code段的段地址为X,则data段的段地址为X-2,start段的段地址为X-1

 练习二:

 新建bbb.asm:

技术分享图片

汇编连接:

技术分享图片

用debug调试并用R查看:技术分享图片

用G运行:

技术分享图片

用D查看内存段:

技术分享图片

①程序返回前,data段地址内存为075A

②CS=076C,SS=0769,DS=075A

③程序加载后,设code段地址为X,data段地址为X-2,stack段地址为X-1

练习三:

新建ccc.asm:

技术分享图片

汇编连接

技术分享图片

用debug查看:

技术分享图片

①程序返回前,data段地址内存为075A

②CS=076C,SS=0769,DS=075A

③程序加载后,设code段地址为X,data段地址为X-2,stack段地址为X-1

练习四:

分别将三个代码中最后一条伪指令end start改为end,分别进行调试:

技术分享图片

技术分享图片

技术分享图片

只有最后一个可以正确执行。

练习三将代码段放在了栈段和数据段的前面,而前两个练习都是将代码段放在了最后一个,而end start是根据start的指令来执行的,第三个将代码段放在首位,所以可以执行。

练习五:

编写code代码,完整代码如下:

技术分享图片

汇编连接,用debug调试:
技术分享图片

R命令查看U命令反汇编G命令执行:

技术分享图片

D命令查看:

技术分享图片

练习六:

编写程序如下:

、汇编连接:技术分享图片

 

技术分享图片

 运行后结果为

技术分享图片

实验总结:

经过这次实验,能够熟练的应用debug中的一些基本指令,但是对于练习六中的栈操作还是不够熟悉,对于栈段代码段和数据段有了更清晰的认识。

 

汇编语言实验五

标签:http   代码   反汇编   code   结果   新建   技术   img   编写程序   

原文地址:https://www.cnblogs.com/cwycwycwy/p/10017438.html

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