微机原理实验一系统认识实验
系统认识实验
一、实验目的
TDN86/88 教学系统的基本操作。
二、实验设备
TDN86/88 教学实验系统一台
三、实验内容
(1)使用串行通讯电缆将实验系统与PC机相连。
(2)开启实验系统。
(3)双击PC机桌面上的WMD86快捷方式图标,进入窗口操作界面。选择对应的串行口号。
(4)鼠标点击文件下拉菜单的新建进入编辑状态。
(5)输入并保存源程序,扩展名为*.ASM。
参考程序:
STACK SEGMENT STACK; 8088宏汇编程序
DW 64 DUP(?);定义堆栈段
STACKENDS
CODE SEGMENT ;定义代码段
ASSUME CS:CODE
START:MOV DI,3500H;程序开始设数据区首址
MOV CX,0010H;字节数送CX中
MOV AX,0000H
SAHF
A1: MOV [DI],AL;写入一字节
INC DI;修改地址指针
INC AX;修改数据
DAA;十进制数调整
LOOP A1;未填完转移
A2: JMP A2
CODE ENDS;代码段结束
END START;程序结束
(6) 对源程序进行汇编、连接,检查无误后,将可执行文件*.EXE装入实验系统。系统装载时提示起始地址为0000:2000,装载完毕后使用U0000:2000命令进行反汇编,检查程序是否装入正确。
显示 信息键入信息>U20002000 BF0035 MOV DI,3500U↙2003 B91000 MOV CX,0010U↙……
(7) 当发现远程序输入错误或需调整时,在调试界面下可用A 命令来修改,如修改2000 句为 MOV DI,3500 的操作如下:
显示 信息键入信息>A20000000:2000MOV DI,35000000:2003↙……
单步运行:在“>”提示符下键入T=0000:2000↙(在系统默认段址CS=0000 情况下也可直接键入G=2000↙)每运行一条指令后会显示下一条待执行指令并以蓝白字显示变化寄存器的内容,重复T↙( 或按F4 键)就可一步一步地运行,直至程序结束。
断点运行:在程序中可用B 命令定义断点,系统规定至多定义10 个断点,例如: 上例中定义了2009 地址为断点,每次键入GB=0000:2000↙程序连续运行至断点时,程序中断并显示当前各寄存器内容。GB是G 命令的扩充,表示含断点连续运行程序,断点仅当系统复位时清除。
显示 信息键入信息>B↙[0:]2009↙[1:]↙>
内存单元内容的显示:使用D 0000:3500↙可查看3500H-350FH 单元中的内容是否为0-15 共16 个数。
内存单元内容的修改:要修改某一单元内容,可进行如下操作,其中,“空格” 键用于向待编辑单元的高地址方向移动地址,而“-”键则向反方向移动地址:用↙来响应,就退出E 命令。
显示信息键入信息>E3500↙0000:3500 00_01 SPACE0000:3501 01_SPACE0000:3502 02_―0000:3503 03_↙>
四、系统操作练习
将内存3500H 单元开始的0-15共16 个数传递到3600H 单元开始的数据区中。
编辑程序并检查无误后,经汇编、连接后装入系统。
用E3500↙命令在3500-3510单元中分别装入00、01、02……数据。
用G=0000:2000↙命令运行以上程序,按实验系统的复位返回监控状态。
用D3600↙命令显示结果。结果:从3600开始显示:00,01,02……
实验程序及流程如下:
STACK SEGMENT STACK
DW 64 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV SI,,3500H ;建立源地址指针
MOV DI,,3600H ;建立目标地址指针
MOV CX, 0008H ;字数送入CX 寄存器中
A1: MOV AX,, [SI] ;取源数据一字送入AX 中
MOV [DI], AX ;将源数据送入目标地址单元中
INC SI;修正指针
INC SI
INC DI
INC DI
DEC CX ;判断是否传送完毕
JNZ A1
A2: JMP A2
CODE ENDS
END START
设数据源地址
目的地址、字节数
取原数据一子到