《2010中北大学微机原理实验指导》由会员分享,可在线阅读,更多相关《2010中北大学微机原理实验指导(19页珍藏版)》请在金锄头文库上搜索。
1、实验三 排序程序设计与调试实验目的:学习分支、循环程序、子程序设计调试方法,熟悉汇编语言程序的设计、编写和调试方法。实验内容:2.5实验实验要求:1、上机前做好充分准备,包括源程序清单、调试步骤等; 2、用DEBUG修改输入的字符,再运行程序,查看结果。实验设备:微机原理实验系统一台。,实验一 系统认知实验实验目的:了解汇编语言的设计、编写和调试程序的方法,掌握DEBUG的使用。实验设备:装有DOS系统和MASM5.0的微机一台,或TDN86/88微机原理教学实验系统一台。实验内容:编程实现在屏幕上显示一个大写字母“A”或字符串“Hello World!”,用DEBUG调试程序。,实验要求:1
2、、上机前做好充分准备,包括源程序清单、调试步骤等; 2、用DEBUG来调试程序,熟悉DEBUG的使用。实验步骤:1、编写程序并输入,检查无误后,经汇编、连接后运行,用DEBUG装入。2、用U命令反汇编程序,应用R、G等命令,观看运行情况。3、用D、E、A等命令查看、修改源数据,用G命令查看运行结果。4、用Q命令退出DEBUG。,思考:,程序运行通过后,用DEBUG改变DL寄存器中的待显字符“A”的ASCII码值。用什么命令? 是-RDL吗? 还是-RDX?,1.建立源文件 使用EDIT软件,得到扩展名为ASM的汇编语言源程序文件。(扩展名 .asm 勿忘加!)2.汇编源程序 使用汇编程序MAS
3、M对源程序进行汇编,生成OBJ、LST和CRF文件(后两种一般不需要,可直接回车)。如程序有错,可以根据提示信息,重新编辑、汇编源程序,直到没有严重错误为止。3.连接程序 使用连接程序LINK,对汇编程序产生的目标文件进行连接,产生可执行的程序EXE。4.调试或运行程序,上机过程,1. 编辑 C:8688EDIT 文件名.ASM2. 汇编 C:8688masm 文件名.ASM3. 连接 C:8688link 文件名.obj4. 调试 C:8688debug 文件名.exe -U 反汇编,记下程序首地址和结束地址 -D 段地址:偏移地址 察看内存单元内容 -E 段地址:偏移地址 修改内存单元内容
4、 空格修改下一个, 回车结束修改-G=起始地址 结束地址 运行程序,参考源程序,CODESEGMENTASSUME CS:CODESTART: MOV AH, 2 MOV DL, A INT 21H MOV AH, 4CH INT 21HCODEENDS END START,显示字母A,返回 DOS,这个程序是调用2号DOS功能实现输出字母A。考虑:如用9号功能,则程序怎么写?,DATASEGMENTWSTR1DB Hello World!,CR, LF,$CREQU0DHLFEQU0AHDATASEGMENTCODESEGMENTASSUME CS:CODE, DS:DATAMO: MOVA
5、H, 9 MOVDX, SEG WSTR1 MOVDS, DX MOVDX, OFFSET WST1 INT21H,如把字符串“Hello World!”显示在屏幕上,则程序段:,MOV AH, 4CH INT 21HCODEENDS END MO,参考源程序,DATASEGMENTMSG1DB 13, 10, NumberMSG2DB 13, 10, Not numberCODESEGMENTASSUME CS:CODE, DS:DATASTART:MOV AX, DATAMOV DS, AXMOV AH, 1INT 21HCMP AL, 30HJLNotNumberCMP AL, 39H,
6、JG NotNumberMOV DX, OFFSET MSG1MOV AH, 9 INT 21HJMP EXITNotNumber: MOV DX, OFFSET MSG2MOV AH, 9INT 21HEXIT:MOV AH, 4CHINT 21HCODEENDS END START,实验三 循环程序设计与调试实验目的:学习循环程序设计方法,熟悉汇编语言程序的设计、编写和调试方法。实验内容:计算sum=1+23+34+N(N-1),当N (N-1) 200时结束。(即计算sum和N)实验要求:1、上机前做好充分准备,包括源程序清单、调试步骤等; 2、用DEBUG查看结果。实验设备:微机原理实
7、验系统一台。,实验四 并行接口8255A实验实验目的:1. 学习并掌握8255的各种工作方式及其应用;2. 学习在系统接口实验单元上构造实验电路。实验内容:不断检测8个开关K7K0的通断状态并随时点亮对应的LED7LED0,开关合上,对应的LED亮,开关闭上,对应的LED熄。端口地址为60H63H。编写其控制程序。 实验要求:连线前,关闭电源。实验结束后,关闭电源,把线取下来,重新装入仪器箱中,放好。实验设备:TDN86/51或TDN86/88教学实验系统。实验线路图见下页。,实验线路图,CODESEGMENTASSUME CS:CODESTART:MOVAL, 82H ;注:控制字可略有不同
8、OUT63H, AL ;写入控制字,B输入,A输出CHECK:INAL, 61H ;读入B口(开关)状态OUT60H, AL ;将读入的数向A口输出以控制小灯JMPCHECK ;继续检测开关状态CODEENDSENDSTART,分别按F2、F3键进行编译和连接,注意此时不要加后缀.asm或.obj。 输入源程序,经汇编、连接后,确认实验箱的电源已打开。然后按F5载入程序,提示CS:,输入0000;IP:输入2000。然后输入G=0000:2000,回车即可运行程序。拨动开关,可见小灯亮或灭。,实验五 D/A转换实验实验目的:学习并掌握数模转换的基本原理和DAC0832芯片的使用方法。实验内容:
9、用图示实验线路编写程序,实现数模转换,并产生锯齿波,用示波器功能(F7)观察波形。端口地址为00H。实验要求:连线前,关闭电源。实验结束后,关闭电源,把线取下来,重新装入仪器箱中,放好。实验设备:TDN86/51或TDN86/88教学实验系统。实验线路图见下页。,实验线路图,步骤:按图连线,编辑源程序,经汇编、连接后装入系统;按F7_Wave进入PC示波器功能;按F1运行程序,输入CS及IP地址,观察DA输出波形。按F2停止,但波形随之消失;按F3暂停,则波形仍在。,DAC UNIT,ADC UNIT,系统总线,MOTOR UNIT,CODESEGMENT;锯齿波发生程序ASSUME CS:CODESTART:MOVAL, 00HNEXT:OUT00H, AL ;D/A转换数据口地址为00HCALLDELAYINCALJMPNEXTDELAYPROCNEAR;延时子程序PUSHCXMOVCX, 40HKKK:LOOPKKKPOPCXRETDELAYENDPCODEENDSEND START,