微型计算机原理实验课,微型计算机原理与接口技术实验课讲义..doc

本文介绍了使用EDIT编辑器编写汇编程序的方法,包括创建.asm文件及将其转换为可执行文件的过程。此外,还详细讲解了如何利用debug工具进行程序调试,包括显示和修改内存、生成目标文件和可执行文件等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

微型计算机原理与接口技术实验课讲义.

实验一 汇编语言编辑环境与调试命令的认识

实验目的

熟悉EDIT编写汇编程序的环境;

学习debug调试命令。

实验仪器

TDN86/51教学实验系统,计算机

实验内容与步骤

(1)、用记事本或EDIT进行汇编程序编辑

可编辑汇编程序的环境很多,记事本和EDIT是其中常用的两种方法。进入记事本很简单,这里不再介绍。

进入EDIT的方法:开始→运行→command→进入DOS界面→edit回车→进入EDIT编辑环境→编辑汇编程序→程序完成后以“文件名.asm”(文件名不能是中文,一定要是字母,而字母不能超过8个,asm是扩展名)存盘。

.asm文件是不能运行的,需要把它变成可执行文件(.exe)。它的变化过程是:

Masm link

.asm→→→.obj→→→.exe

练习1:在EDIT中编写一个程序,实现数据段中的两个32位数X、Y相加,结果存到数据段Z中。并以dadd.asm文件名保存。

(2)、目标文件(.obj)、可执行文件(.exe)的产生

运行masm程序,产生 .obj文件,并且检查程序是否有语法错误。如果有语法错误,会有提示,在哪一行有什么样的错误(是英文提示)。根据提示,再进入EDIT中,打开源文件进行修改,直到没有语法错误为止。

运行link程序,产生 .exe可执行文件。通过运行可执行文件,观察该程序是否能实现相应的功能。如若不能,进入debug进行调试。

(3)、debug调试工具

debug是为汇编语言设计的一种调试工具,它通过单步、设置断点等方式为汇编语言程序员提供了非常有效的调试手段。

debug程序的调用

在DOS的提示符下,可键入命令:

C>debug 路径\文件名.exe(回车)

其中,文件名是被调试文件的名字(注意:该文件一定要是.exe文件)。如用户键入文件名,则debug将指定的文件装入存储器中,用户可对其进行调试。如果未键入文件名,则用户可以用debug命令N和L把需要的文件装入存储器后在进行调试。

在debug程序调入后,将出现提示符-,此时就可用debug命令来调试程序。

debug的主要命令

显示存储单元的命令 D,格式为:

-D 地址 从指定地址起显示80个字节的内容;

-D 范围 显示所指定范围内的内容,指定范围为起始地址和终止地址;

-D显示从上一个D命令的最后一个单元后面的80个字节的内容,或者在D未使用过的情况下,显示DS:0100为起始的内容。

例如,按指定范围显示存储单元内容的方法为:

-d 100 120

其中100 120 给出显示存储单元的范围。这里没有指定段地址,D命令自动显示DS段的内容。

修改存储单元内容的命令

输入命令E,有两种格式如下:

-E 地址 [内容表] 用指定的内容表去修改指定地址开始的存储器中内容

例如

-E DS:120 F3A5’XYZ’96

表示用F3、A5、’X’、’Y’、’Z’、96共6个字节代替了DS:120至DS:125中的内容

-E 地址 逐个单元修改内容

例如

-E CS:100 屏幕显示为:

18E4:0100 89.-

用户可以键入’78’,修改次内容,再键入空格键显示下一个内容,不修改时可用空格键跳过,逐个修改存储器内容,直到回车键结束。

填入命令格式F

-F 范围(内容表) 将内容表中内容填入所指定的范围。

例如

-F 18E4:0200 L10 00

将0200H单元开始的16个字节全部填入0。若内容表中字节数超过指定范围,则忽略超过项,若内容表中字节数小于指定范围,则反复填入,直到填满所有单元为止。

检查和修改寄存器命令R

格式有三种:

-R 显示CPU内所有寄存器内容和标志位状态

-R 寄存器名 显示和修改某一个寄存器内容

例如

-R AX 屏幕显示:

AX 1200

: ;AX当前内容为1200,若不修改则按回车键,否则键入要修改的内容。

如:

-R BX

BX 0369

:059F

则把BX寄存器的内容修改为059F。

RF 显示和修改标志位内容

例如 -RF 屏幕显示:

OV DN EI NG ZR AC PE CY —

此时,如不修改其内容可按Enter键,否则,可键入欲修改的内容,如:

OV DN EI NG ZR AC PE CY —PONZDINV

即可,可见键入的顺序可以是任意的。

运行命令G

格式为:

-G [=地址1] [地址2 [地址3…]]

其中,地址1指定了运行的起始地址,如不指定则从当前的CS:IP开始运行。后面的地址为断点地址,当指令执行到断点时,就停止执行并显示当前所有寄存器及标志位的内容,和下一条将要执行的指令。

跟踪命令T

格式有两种

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值