欢迎来到天天文库
浏览记录
ID:47563991
大小:222.50 KB
页数:9页
时间:2020-01-15
《微机原理实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、...... 实验一、DEBUG调试软件的使用 一、实验目的 1.熟练掌握DEBUG的常用命令,学会用DEBUG调试程序。2.了解数据在存储器中的存取方法以及堆栈中数据的压入与弹出。3.掌握各种寻址方式以及简单指令的执行过程。4.掌握变量和标号的处理,数值的默认进位制。 二、实验内容 1.设堆栈指针SP=2000H,AX=3000H,BX=5000H;利用堆栈实现将AX,BX的内容交换。用DEBUG进行汇编和调试。1.1 DEBUG的主要命令 DEBUG是为汇编语言设计的一种调试工具,它通过单步、设置断点等方式为汇编语言程序员提
2、供了非常有效的调试手段。一.进入DEBUG状态二.DEBUG的命令 1.汇编命令A 该命令允许键入汇编语言语句,并能把它们汇编成机器代码,相继地存放在从指定地址开始的存储区中。注意:汇编程序默认的数据是十进制,而DEBUG默认的数据是16进制,即DEBUG中没有二进制、八进制及十进制,只有16进制。汇编命令格式为:-A?[段地址]:[偏移地址]说明:[]表示可选项,若未指定地址,则默认地址为CS:0100H。例:用汇编语言编写一个简单的加法程序。输入的汇编指令有语法错误的,将提示“error”,再重新输入正确指令即可。若程序输入完毕,发现某条
3、指令输入错误,比如第三条语句输入有误,就从该指令的偏移地址开始汇编(即-A106)。如果新输入的指令所占用的内存空间跟旧指令一样,修改完回车退出汇编即可;如果新输入的指令所占用的内存空间比旧指令少,可在多余的内存空间输入“NOP(空操作,占一字节)”指令;如果新输入的指令所占用的内存空间比旧指令多,就必须将后面的所有指令重新输入。思考:汇编程序时,偏移地址为何不是连续的,它是如何变化的?(参考第6小点) 2.命名命令N 读(L)/写(W)程序前,必须先命名,即该命令结合读(L)/写(W)命令使用。(参阅4、5)例:-NEX1;给程序文件命名为E
4、X1。 3.检查和修改寄存器命令R 4.写盘命令W W命令没有任何参数时,与命令N配合使用进行写操作,使用W命令前在BX:CX中应写入文件的字节数。CX的最大值是0FFFFH,即文件超过64K,低字放CX,高字放BX寄存器。 5.读盘命令L 格式为:-L[地址] 该命令装入指定文件到内存,如未指定地址,则装入CS:100开始的存储区中。反汇编,显示程序??读取文件还可以在DOS状态,输入DEBUG后接着输入文件名,如E:TANGDU>DEBUG?EX1,进入DEBUG状态的同时即把EX1文件装入内存,等同于前两条命令。学习参考..
5、.... 6.反汇编命令U ASCII码所组成的助记符转换成机器码的过程称为“汇编”(命令A),“反汇编”(命令U)即将内存中的机器码翻译成助记符的过程。格式为:a.U[地址] ;从指定地址开始,反汇编32字节b.U[地址范围] ;对指定范围内的存储单元进行反汇编 7.跟踪命令(单步执行命令)T 格式为:a.T ;从当前的CS:IP开始执行一条指令,并显示所有寄存器的内容 8.运行命令G 格式为:G[=起始地址][断点地址]?如不指定地址,则从CS:IP开始运行例:-G????;不带参数时,特别要注意IP的值。运
6、行前可使用R命令查看IP的值,如果运行了程序之外一些非指令的随机数,容易造成死机的后果。 9.修改存储单元内容命令E?(参阅10) 10.显示存储单元内容命令 注意:在DOS环境,应关闭所有运行程序,退回DOS提示符状态“>”才能关机。 1.2 DEBUG调试软件的使用 编写程序: 从3000H单元地址开始传送10个数据到4000H地址开始的单元中。 实验报告要求:写出以上三个实验内容的运行步骤、相关程序以及执行的结果或现象。 实验三、给出若干个数据,求其中的最大值和最小值一.实验目的1.掌握无符号数和有符号数条件转移指令的使用。
7、2.掌握指针的移动和循环程序设计的方法。二.实验内容:用EDIT编写出源程序,将其汇编、连接成一个可执行文件,用DEBUG来调试。可发挥部分:将数据排序。三.实验报告要求:1.实验目的;2.实验内容;3.实验程序,程序必须有必要的注释;4.实验结果、数据或现象分析;5.实验思考题、实验的心得体会及对本实验的意见或建议。四、编写程序:D:>EDIT文件名.ASM学习参考...... 实验三、给出若干个数据,求其中的最大值和最小值一.实验目的1.掌握无符号数和有符号数条件转移指令的使用。2.掌握指针的
8、移动和循环程序设计的方法。二.实验内容:用EDIT编写出源程序,将其汇编、连接成一个可执行文件
此文档下载收益归作者所有