微机原理与应用
验 指 导 湖南工业大学 计算机与通信学院
1
书
实
1,2,3,9,15实验一 内存数据交换
一、实验类型
验证性实验。
二、实验目的与任务
1、掌握DEBUG的使用。
2、掌握给寄存器、存储单元赋值和交换内存单元的数据的方法。
三、预习要求
预习第5章和微机实验指导书。
四、实验基本原理
1、怎样使用debug小汇编调试工具? (1)debug的特点
DEBUG是一个小汇编语言调试工具,支持用户直接对内存地址(逻辑地址)编写程序。其数据段、代码段在同一段。一些简单的汇编程序以及对程序进行调试。 DEBUG不支持标号,常数只支持16进形式。 如: MOV AX, 03F0 MOV [0100], AX等。
2、DEBUG 常用命令
(1)DEBUG 进入汇编调试。
在DEBUG状态下,系统出现“_”提示符。(举例) (2)退出 DEBUG 命令: Q (3)查看CPU内部寄存器:
r 查看所有寄存器,包括标志位。 rAX 查看某个寄存器的值。(举例) (4)查看存储器的内容
d 100 查看偏移地址为100h的存储单元的内容。一次显示1024个字节的内容。每行为16个字节,共8行。
d100 101 查看100h至101h单元的内容。 (5)汇编命令
1
a100 :从100h单元开始编写汇编程序。直接输入回车键结束汇编命令,回到DEBUG状态。
小汇编命令 小汇编程序 Debug状态 逻辑地址
(7)反汇编命令:
u 100 从100h单元开始反汇编机器语言为汇编语言。
机器指令
2
对应的汇编语言
(8)单步执行命令 t
t=100 单步执行地址为100h那条指令。由于一条指令占用多个单元。在使用t时,注意每条指令的起始地址。 连续使用t,表明顺序执行一条指令。
t=100 10 表示从100h地址开始执行10条指令。
每执行完一条指令,回显示CPU内部寄存的状态和下一条汇编指令。
五、实验仪器与设备
1、PC微机,1台
2、MASM汇编及调试程序(MF开发环境),1套
六、实验内容
(1)立即寻址:进入DEBUG后,先查看各寄存器的值,将AX,BX,CX,DX寄存器的值记录。从100h单元开始编写程序将3f10h, 0200h赋值给AX, BX寄存器。并使用单步执行命令,执行这2条程序。执行完后查看AX, BX的内容。 (2)直接寻址,将AX的内容写到内存单元 0220h单元。并查看0220h, 0221h单元的内容。
(3)寄存器间接寻址:利用BX寄存器将AX的内容写入到0200h单元。 (4)编写程序完成0200h单元和0300h单元一个字和一字节的内容互换。用d命令查看程序执行前后 0200h, 0300h单元的内容。
七、实验步骤
1、运行DEBUG。
2、在DEBUG状态下进行实验。
八、实验注意事项
1、严格按要求操作,实验完毕请老师检查实验结果后方可离开。 2、实验报告上一定写出程序详单,以及程序运行情况。
九、实验报告要求
根据大纲和实验指导书书写实验报告。
3
实验二 标志实验和栈操作实验
一、实验类型
验证性实验。
二、实验目的与任务
1、掌握标志寄存器的含义 2、掌握栈操作指令
3、掌握算术指令对标志位的影响
三、预习要求
预习第5章和微机实验指导书。
四、实验基本原理
debug 中,标志的含义:
CF进位标志: NC-0 CY-1 ZF零标志: NZ-0 ZR-1 SF符号标志: PL-0 NG-1 OF溢出标志: NV-0 OV-1
五、实验仪器与设备
1、PC微机,1台
2、MASM汇编及调试程序(MF开发环境),1套
六、实验内容
栈操作指令实验
(1)通过 R命令查看各寄存器的值,特别是SP(栈顶指针)的值,并记录SP的值。
(2)用MOV指令给AX,BX,CX,DX赋值,如AX=FFFA,BX=FFFB,CX=FFFC,DX=FFFD。 (3)重新编写程序: (a) PUSH AX PUSH BX PUSH CX
4