微机原理实验指导书
- 格式:doc
- 大小:852.50 KB
- 文档页数:32
《微机原理与应用实验指导书》
XX大学机电工程学院
刘XX
实验一调试程序——DEBUG
实验目的初步掌握汇编语言,可以调试简单的程序
实验内容用汇编语言编写一个简单的加法运算程序。
编程提要
1.进入DEBUG状态,开机进入DOS状态。
C>DEBUG↙
屏幕显示:
-
“-”为已进入DEBUG状态,在该提示符下可键入DEBUG命令。下划线部分为用户键入的字符或命令
2.键入程序并汇编
用DEBUG的A命令送入程序:
-A 100↙
MOV AL,33
MOV DL,35
ADD DL,AL
SUB DL,30
MOV AH,2
INT 21
3。执行程序
-G↙
4.反汇编
可以用反汇编U命令将键入的程序调出,并且可以得到每条汇编指令的机器码。
-u起始地址终止地址
5.退出DEBUG返回DOS状态
-Q
6.显示内存命令D
-D 0100↙
-D 起始地址终止地址↙
7.修改存储单元命令E
-E 地址↙
8.检查和修改寄存器内容命令R
格式:a. R
c.R[寄存器名]
功能:a.显示CPU内部所有寄存器的内容和全部标志位的状态。
b.显示和修改一个指定寄存器的内容和标志位的状态。
9.追踪与显示命令T
格式:a. T[=地址]或 T[地址]
b. T=[地址][条数]
10.命名命令N
格式:N文件名
11.读盘命令L
12.写盘命令W
实验报告(写出上机结果及现象)
实验二汇编与宏汇编程序
实验目的通过实验了解汇编就是把用汇编语言编写的源程序翻译(汇编)成机器语言的目标程序。汇编程序可以使用小汇编程序(ASM)也可以用宏汇编程序(MASM),
由于宏汇编程序不但可以代替ASM,而且可以汇编具有宏定义的汇编程序,因
此我们在汇编程序时使用宏汇编程序(MASM)。
实验内容
执行宏汇编程序
编程提要
1.汇编过程
在DOS状态下,键入MASM则调入宏汇编程序,屏幕显示与操作如下:
masm↙
Microsoft (R) Macro AssembLe Version 5.00
Copyright (C) Microsoft Corp 1981-1985,1987.All rights reserved.
Source filename [.ASM]: ex2↙
Object filename [ex2.OBJ]: ex2↙
Source listing [NUL.LST]: ex2↙
Cross- reference [NUL.CRF]: ex2↙
50678+410090 Bytes symbol space free
0 Warning Errors
0 Severe Errors
2.在DOS状态下,键入LINK(或LINK EX2)则系统调入LINK程序,屏幕显示操作如下:
C>LINK↙
IBM Personal Computer Linker
Version 2.00(C) Copyright IBM Corp 1981,1982,1983
Object Modules [.OBJ]: EX2↙
Run File [EX2.EXE]:EX2↙
List File[NUL.MAP]:EX2↙
Libraries[.LIB]: ↙
3.执行程序
当用连接程序LINK将目标程序(.OBJ)连接定位后,可产生可执行文件(.EXE),可以在DOS 状态下执行该程序。
C>EX2↙
How are you !
也可以键入EX2.EXE↙
C>EX2.EXE↙
How are you !
实验报告(写出上机结果及现象)
实验三初级程序的编写与调试实验
实验目的
1.熟练掌握DEBUG的常用命令,学会用DEBUG调试程序
2.深入了解数据在存储器中的存储方法,及堆栈中数据的压入与弹出
3.掌握各种寻址方法及简单指令的执行过程
实验内容
1.设堆栈指针Sp=2000H,Ax=3000H,Bx=5000H请编一程序将Ax的内容和Bx的内容
进行交换。请用堆栈作为两寄存器交换内容的中间存储单元,用Debug调试程序进
行汇编与调试。
2.设DS=当前段指地址,BS=0300H,SI=0002H,请用DEBUG的命令将存储器依稀
偏移地址300H~304H连续单元顺序装入OAH、OBH、OCH、OEH。在DEBUG状态
下送入下面程序,并用单元步执行的方法,分析每条指令源地址的形成过程?当数
据传送完毕时,Ax中的内容是什么?
程序清单如下:
MOV Ax.Bx
MOV Ax,0304H
MOV Ax,[0304H]
MOV Ax,[Bx]
MOV Ax,0001[Bx]
MOV Ax,[Bx][Si]
MOV Ax,0001[Bx][Si]
HLT
3.设Ax=0002H,编一个程序段将Ax的内容乘10,要求用移位的方法完成。
编程提要
实验内容1
将两个寄存器的内容进行交换时,必顺有一个中间寄存器才能进行内容的交换,如果用堆栈做为中间存储单元,必顺遵循先进后出的原则。
实验内容2
1其中数据寄存器中的段地址为进入Debug状态后系统自动分配的段地址。
2Si和Bx的初值可在Debug状态下,用R命令装入,也可以在程序中用指令来完成。
3用T命令程序执行执行,可进行单步跟踪执行,每执行一条指令就可以看到各寄存器的状态。也可用R命令直接调出寄存器,来栓验各寄存器
内容是否确。
4在执行程序前,可用E命令将偏移地址300H~304H送入OAH,OBH,OCH,ODH。
实验内容3
用移位的方法完成某些乘法运算,是较为常见的方法,操作数左作一位为操作
数乘2运算。
实验报告(写出上机结果及现象)
实验四计算学生平均成绩的实验
实验目的熟悉汇编语言程序的使用,掌握十进制数的运算和设计显示程序运行结果的格式。
实验内容编写程序,计算20个分数的平均值,并以十进制表示将结果显示在屏幕上,显