川大2012春计算机综合实践

上传人:F****n 文档编号:99132382 上传时间:2019-09-17 格式:DOC 页数:31 大小:112.50KB
返回 下载 相关 举报
川大2012春计算机综合实践_第1页
第1页 / 共31页
川大2012春计算机综合实践_第2页
第2页 / 共31页
川大2012春计算机综合实践_第3页
第3页 / 共31页
川大2012春计算机综合实践_第4页
第4页 / 共31页
川大2012春计算机综合实践_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《川大2012春计算机综合实践》由会员分享,可在线阅读,更多相关《川大2012春计算机综合实践(31页珍藏版)》请在金锄头文库上搜索。

1、四川大学网络教育学院计算机综合实践校外学习中心: 贵 阳 学 院 学 生 姓 名: 吴 卫 专 业: 电气工程及其自动化 层 次: 专 升 本 年 级: 2012年春 学 号: DH1121Y1002 实 践 时 间: 2013年11月 实验一:熟悉、使用DEBUG调试工具 借助DEBUG调试工具来发现汇编语言程序的错误所在并加以改正。通过实验,掌握DEBUG的常用基本命令,学会如何在windows的命令模式下启动DEBUG,进而学会如何使用DEBUG查看CPU和内存,以及进行程序的跟踪调试等。1 实验目的1.1学习如何在Windows的命令模式下启动DEBUG。1.2掌握DEBUG的常用基本

2、命令。1.3学习如何使用DEBUG查看CPU和内存以及进行跟踪调试。2启动DEBUG2.1打开Windows命令窗口选择“开始”“运行”输入“cmd”命令2.2启动DEBUG在命令窗口中启动DEBUG,将显示连接符“”,这时可输入各种DEBUG命令。2.3关于使用命令的几点说明:l 在提示符“”下才能输入命令,在按“回车”键后,该命令才开始执行;l 命令是单个字母,命令和参数的大小写可混合输入;l 可用F1、F2、F3、Ins、Del、等编辑键来编辑本行命令;l 当命令出现语法错误时,将在出错位置显示“Error”;l 在DEBUG中使用的数都是以十六进制来表示的。3实验内容3.1 R命令作用

3、:查看、改变CPU寄存器的内容(1)显示所有寄存器之中的内容:输入R我们重点关注AX、BX、CX、DX、CS及IP寄存器的内容,其他寄存器SP、BP、SI、DI、ES、SS及标志寄存器先不予理会。此外,并列出了CS:IP所指向的内存单元处所存放的机器码,并将它翻译为汇编指令。(2)改变寄存器中的内容:输入R AX在提示符“:”后输入1111,即可将AX的值设置为1111。在输入R命令,查看修改后的寄存器值。3.2 D命令作用:查看指定范围内的内存中的内容(1)直接输入D命令DEBUG将输出3部分内容,查看执行结果。说明:l 左边是每行的起始地址,用“XXXX:YYYY”表示,其中XXXX表示内

4、存单元的段地址,YYYY表示内存单元的偏移量;l 中间以十六进制的形式显示从指定地址开始的128个内存单元的内容,每行显示16个字节的内容;l 右边显示每个内存单元中的数据对应的可显示的ASCII码字符,若没有对应可显示的ASCII码字符,DEBUG用“.”来代替。(2)执行带参数的D命令若执行带参数的命令D,DEBUG将显示指定地址范围的内容。带参数的方式有三种。l 方式一:D 起始位置n DEBUG从起始位置开始显示128个字节的内容。n 输入命令:D 1AF5:100l 方式二:D 起始位置 结束位置n DEBUG从起始位置开始一直显示到结束位置。n 输入命令:D DS:100 11Fl

5、 方式三:D 起始位置 L长度n DEBUG命令从起始位置开始显示指定长度内容。n 输入命令:D DS:100 L10使用带参数的D命令后,接着使用D命令,可列出后续的128个内存单元的内容。3.3 E命令格式:E 起始地址 字节值表 或 E 起始地址作用:用值表中的值替换从“起始地址”开始的内存单元中的内容例1:将内存1000:01000:9单元中的内容分别写为0、1、2、3、4、5、6、7、8、9,可用“E 起始地址 数据 数据 数据 数据 数据”的格式来进行。步骤: 用D命令查看1000:01000:f单元的内容:D 1000:0 f 用E命令修改从1000:0开始的10个单元中的内容:

6、E 1000:0 0 1 2 3 4 5 6 7 8 9 用D命令查看1000:01000:f单元中内容的变化:D 1000:0 f例2:用E命令向内存中写入字符。从内存1000:0开始写入:数值1,字符“a”,数值2,字符“b”,数值3,字符“c”。步骤: 用D命令查看1000:0处的内容:D 1000:0 用E命令输入:E 1000:0 1 a 2 b 3 c 用D命令查看1000:01000:f单元中内容的变化:D 1000:0 f例3:用E命令向内存中写入字符串。从内存1000:0开始写入:数值1,字符串“a+b”,数值2,字符串“c+”,数值3,字符“IBM”。步骤: 用D命令查看1

7、000:0处的内容:D 1000:0 用E命令输入:E 1000:0 1 a+b 2 c+ 3 IBM 用D命令查看1000:01000:f单元中内容的变化:D 1000:0例4 用E命令以提问的方式来逐个地修改从某一地址开始的内存单元中的内容。以从1000:10单元开始为例。 步骤: 用D命令查看1000:10处的内容:D 1000:10 用E命令输入:E 1000:10,按Enter键 DEBUG将显示起始地址1000:0010以及第一个单元(即1000:0010单元)的原始内容:00.,然后光标停在“.”的后面,提示输入想要写入的数据,此时有两种选择:其一输入数据,完后按空格键,即用输入

8、的数据改写当前的内存单元;其二不输入数据,直接按空格键,则表示不对当前内存单元进行改写 当前单元处理完成后(不论是改写或者没有改写,只要按了空格键,就表示处理完成),DEBUG将显示下一个内存单元的原始内容,并提示进行修改,可以用同样的方法进行处理 所有希望改写的内存单元改写完毕后,按ENTER键,E命令结束 用D命令查看1000:10单元中内容的变化:D 1000:10 4实验任务C:debug -F 100 17F 00 -A 100 0B3E:0100 MOV DL,01 0B3E:0102 MOV AH,02 0B3E:0104 INT 21 0B3E:0106 INT 20 0B3E

9、:0108 -N C:1ST.COM -R BXBX 0000 : -R CX CX 0000 :8 -W 100 Writing 00008 bytes -Q C:在dos下执行程序 C:dir 1st*.* Volume in drive C is NTFSCCCC Volume Serial Number is FC03-2958 Directory of C: 2010-8-18 18:51 8 1ST.COM 1 File(s) 8 bytes 0 Dir(s) 1,080,619,008 bytes free C:1st C:方法一:C:DEBUG 1ST.COM -G=100 P

10、rogram terminated normally方法二: C:DEBUG -N C:1ST.COM -L 100 -G=100 Program terminated normally借助DEBUG调试工具来发现汇编语言程序的错误所在并加以改正。 5实验结论这次实验,因为要自己去设计整个过程,所以就去了解学习自己原来并没有真正弄懂的东西。比如一些程序的代码的意思,汇编语言的逻辑。使我对前面所做的实验有了原理性的了解,回头看一些实验,也知其然其所以然了。同时对课本上讲的一些内容,不再像以前那样觉得抽象,通过这次设计,有了具体的理解。实验二、设计汇编语言程序1实验目的进行程序设计实验,掌握汇编语

11、言程序。实验包括对字符串统计程序进行设计;设计双字乘法程序设计;设计字符串统计程序设计双字乘法程序设计。掌握宏汇编中的标号的使用学会使用msam编写简单的程序2预备知识汇编语言程序设计是一门实践性很强的课程。编写程序、上机调试、运行程序是进一步学习和掌握汇编语言程序设计的必要手段。在编译汇编程序后,需要进行调试,DEBUG.EXE是DOS提供的用于调试可执行程序的工具软件,是汇编语程序设计中常用的调试工具。在DEBUG环境下,不但可以调试经汇编、连接生成的可执行程序,也可以编写简单的程序。调试汇编语言程序,能使用户接触到计算机内部,允许用户直接观察和修改CPU的寄存器;能观察、修改内存单元;允

12、许直接输入机器指令并单步执行;能反汇编程序。可以说,debug是观察和了解计算机内部运行情况的有利助手。3汇编语言源程序上机操作过程3.1源程序上机过程流程图 开始建立源文件 Y有人工检查吗? 修改源程序 NASM文件存盘调MASM程序汇编源文件 Y有语法错误? N调LINK程序,连接目标文件?连接有错?EXE文件存盘 用DELBUG查错执行EXE文件 Y结果有错? N结束3.2 实验步骤1)编写一段代码(m.asm)功能是:显示字符串data segment mov ax,num num dw 8072h or ax,ax data ends jns donecode segment neg ax assume cs:code,ds:data mov num,a xstart proc far done: r t epush ds start endpxor ax,ax code end spush ax end start mov ax,data mov ds,ax 2) 在DOS提示符下键入:对名为m.asmd的文件进行编译,连接生产.obj和.exe文件:-cd.-cd.-cd

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号