汇编语言程序设计实验报告一

南京信息工程大学实验报告

  • 实验名称 用机器指令和汇编指令编程(1)
  • 实验日期   2018.10.22   
  • 学院:计软院   
  • 专业:计算机科学与技术 
  • 年级:2017级
  • 班次:5班 
  • 姓名:陈奕明   
  • 学号 20171308194


一、实验目的
1. 掌握使用debug工具编写和调试汇编命令的方法

2. 掌握第1-2章所学的关于CPU、寄存器、内存的基础知识

3. 掌握第1-2章涉及的几条指令mov, add, sub, jmp的用法


二、实验准备
1. 复习教材第1~2章内容,完成教材内相关检测点

2. 结合教材实验1 (P35)及公邮文件中心→实验下的 “实验1辅助文档.pdf”学习debug 工具用法。


三、实验内容
1. 教材实验1(P35)

(1)练习教材 P35-45「预备知识:Debug 的使用」,学习 debug 启动、退出及常用指 令用法;

(2)在练习基础上,完成「2. 实验任务」

Tips: 「2. 实验任务」中每一项任务都可以在教材前序内容或练习中找到提示线索。建议先 完成「二、实验准备」中要求的内容及实验内容的第(1)项,这样完成「2. 实验任务」时会 很容易完成。比如: 实验任务(1)可参照教材P41-43的(7)完成; 实验任务(2)与教材 P20的检测点(2)相似且相关;


四、实验结论
任务一:

把如下的程序段写入内存,逐条执行,观察每条指令执行后CPU中相关寄存器中内容的变化。

首先使用e指令按题目要求的写入机器码指令(随便找了个地址1000:0):

到达文本输入限制后没办法,只能先执行了...执行完后,看一下已经写入数据的内存单元的情况...嗯...数据是对的

继续输入并执行,执行完全部代码后,使用u指令反汇编机器码命令:

跟书上写明的汇编命令相符。

然后输入汇编命令:

中间又把1和字母l分不清了,出了个error。。。

命令输入完毕,-t命令单步执行:

和上课听讲的一样,对指定的寄存器进行数据的改写操作。

后面的命令行有点多就用-t+数字=执行往后的几条命令全部执行了:

最后的结果:

任务二:将下面三条指令写入从2000:0开始的内存单元中,利用这3条指令计算2的8次方。

mov ax,1

add ax,ax

jmp 2000:0003

解题思路:2的三次方就是8,再看下题目给我们的三条命令。执行完第一条后ax的值为1,执行完第二条命令后ax的值为2,那么就需要我们再执行这条语句7次了,所以就要使用jmp命令,通过改变CS和IP寄存器的值来使得CPU继续反复执行这条命令,所以往下又写了七句jmp 2000:0003使得CPU再反复执行其次该语句,从而使得AX中的值变为二的八次方,由于八位寄存器的限制,最高位已经溢出了。。。。

第三题

PC主板上的ROM中写有一个生产日期,在内存FFF00H~FFFFFH的某几个单元中,请找到这个生产日期并且试图改变它。

实验截图如下:

试图修改但是失败了,看来是因为ROM的关系,无法修改。

第四题

向内存B8100H开始的单元中填写数据,如:

-e B810:0000 01 01 02 02 03 03 04 04

这是进行了一系列实验过后的结果:

有这么些结果和感悟:

再向寄存器写入数据时,每多两个字节的数据就会产生一个新的颜色区域,而且写入区域的CS码每产生一次进位,就会使得产生的色块区域产生换行,最终得到了这么些结果。


五、实验心得与感悟
这次实验主要实验了R命令(用于查看、修改寄存器中的内容)、D命令(查看内存中的内容)、E命令(修改内存中的内容)、U命令(反汇编命令)、T命令(执行代码行命令)

第四题经过这么多次的实验测试,看来这一段内存空间是显存。

我的电脑屏幕运行Dosbox窗口极小,最后查到按Alt+Enter可以进入全屏模式进行操作。

当初安装Dosbox时经历过,千万别把程序装在系统盘,否则会有权限问题。

暂时就这样把,肯定还有许多要学的,要完善的,好好学习汇编!!

                                                                                                                                                                                                                                                 2018-10-27  21:28:25于宿舍

猜你喜欢

转载自www.cnblogs.com/cymwn-com/p/9850207.html
今日推荐