实验一微机原理系统认识试验报告
实 验 报 告
课程名称 微型计算机原理原理与接口技术
实验项目 系统认识、数码转换、运算编程实验
实验仪器 Wmd86联机软件、PC机一台
学 院____信息管理学院_ ___
专 业 信息安全
班级/学号 信安1001班/2010012233
学生姓名 姚兴仁
实验日期 2012/04/09
成 绩 ______________________
指导教师 _________ ________
实验一 系统认识、数码转换、运算编程实验
一、实验目的
1.掌握TDN86/88教学系统的基本操作。
2.学习数码转换的程序设计方法;
3.学习运算编程方法。
二、实验设备
1.PC机一台;
2.TDN86/88教学实验系统一台。
三、实验内容及步骤
1.系统认识实验
从3500H内存单元开始建立0-15共16个数据。
实验程序如下:
STACK1 SEGMENT STACK ;8088 宏汇编程序
DW 64 DUP(?) ;定义堆栈段
STACK1 ENDS
CODE SEGMENT ;定义代码段
ASSUME CS:CODE
START: MOV DI,3500H ;程序开始设数据区首址
MOV CX,0010H ;字节数送入CX中
MOV AX,0000H
A1: MOV [DI],AL ;写入一字节
INC DI ;修改地址指针
INC AX ;修改数据
DAA ;十进制调整
LOOP A1 ;未填完转移
A2: JMP A2
CODE ENDS ;代码段结束
END START ;程序结束
实验步骤
(1)启动Wmd86联机软件Wmd86联机软件的启动方式有两种可以在【开始】/【程序】/【TangDu】菜单中单击“Wmd86”的程序组启动直接双击桌面上“Wmd86”快捷键启动该程序组启动应用程序主界面窗口上位机和下位机的连接不正常或下位机死机,请确认下位机电源已经打开,串口线两端接触良好编译菜单项调试区DEBUG命令观察运行结果,即键入D0000:3500 ↙,可查看3500H-350FH单元中的内容是否为0-15共16个数。注意,因本程序的结尾为死循环,应在程序运行后停止运行再观察结果。
(5)熟悉系统提供的单步运行、断点运行等功能,可以使用调试菜单项STACK1 SEGMENT STACK
DW 64 DUP(?)
STACK1 ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV CX,0005H ;循环计数器赋初值
MOV DI,3500H ;ASCⅡ码首址
A1: MOV BL,0FFH ;将错误标志送入BL
MOV AL,[DI] ;送ASCⅡ码至AL
CMP AL,3AH ;比较AL与3A
JNB A2 ;不低于3A则转A2
SUB AL,30H ;低于3A则取ASCⅡ码低4位
JB A2 ;低于30则转A2
MOV BL,AL ;否则AL内容送入BL,取代FF
A2: MOV AL,BL ;结果或错误标志送入AL
MOV [DI+0AH],AL
INC DI
LOOP A1
A3: JMP A3
CODE ENDS
END START
实验步骤
阅读程序,画出程序流程图。
输入源程序,进行编译、链接和加载。
在3500-3504H单元中存放五位十进制数的ASCⅡ码,即在调试区调试区STACK1 SEGMENT STACK
DW 64 DUP(?)
STACK1 ENDS
DATA SEGMENT
XLDW ? ;请在此处给X低位赋值
XHDW ? ;请在此处给X高位赋值
YLDW ? ;请在此处给Y低位赋值
YHDW ?