《微机原理课程设计指导书.doc》由会员分享,可在线阅读,更多相关《微机原理课程设计指导书.doc(39页珍藏版)》请在金锄头文库上搜索。
1、此文档收集于网络,如有侵权,请联系网站删除题目一:动画程序设计本题目重点考查BIOS中断调用中显示器控制的子程序调用。主要包括:显示器显示方式设置,背景颜色和前景颜色设置及写像素点等。u 设计要求:1) 以滚动方式输出小车动态行驶图形。2) 小车在公路上动态行驶,从屏幕左侧驶向屏幕右侧。在到达屏幕右侧后,公路下降一段距离并改变颜色,然后小车继续由左向右行驶。3) 当下降到屏幕底部时,再返回到屏幕顶部重复上述过程。4) 直到有键按下,程序运行结束。题目二:音乐程序设计通过该题目的设计过程掌握PC及内部接口电路8255、8253的应用方法、BIOS中断调用。以及8253。8255芯片的初始化编程和
2、音乐程序的设计方法。u 设计要求:1) 利用系统内部的发声电路,产生音频声音。2) 选择一首歌曲,对其进行编程。3) 运行程序后能够反复演奏这首歌曲。题目三:电子时钟程序设计通过该题目的设计过程,熟悉和掌握主机内的82538254-2的计数器的应用,掌握汇编语言编程,时、分、秒在屏幕上显示的方法。熟悉和掌握主机内中断控制器8259A的使用方法。熟悉借用原有电路,重新设置定时器、编写中断服务程序的方法。u 设计要求:1) 利用PC系列微机现有的硬件和软件资源编写时钟程序,在CRT屏幕上显示XX(时):XX(分):XX(秒),并且每秒钟更新一次显示。2) 程序从按下任意键开始显示数据区中存放的时间
3、值。3) 运行中按下空格键则停止运行返回DOS。题目四:画图程序设计通过该题目的设计过程,熟悉和掌握通过BIOS INT 10H调用,将屏幕的工作方式设置为图形方式。确定好坐标,用写像素子程序画出线段,实现绘图。u 设计要求:1)利用汇编语言在图形形式下的编程方法设计一个图形。2)通过CRT显示一个图形,图形不能过于简单。题目五:简单计算器程序设计 通过该题目的设计过程,熟悉和掌握BIOS调用,利中INT 16H调用完成清屏、设置显示方式、设置窗口等操作。掌握INT 21H DOS系统功能调用,从键盘输入接收十进制操作数和运算符,由程序完成字符到二进制数的转换,并存储。掌握根据运算符完成运算,
4、由程序在屏幕上显示运算结果等方法。u 设计要求 1) 设计一个简单的计算器程序。2)在屏幕上显示一个小窗口,将光标定位在窗口内。3)通过运行程序,在窗口内输入一个表达式(单项运算)。4)根据表达式计算运算结果,并在表达式的后面显示一个“=”和运算结果。题目六:歌手大奖赛计分程序设计通过该题目的设计过程,熟练掌握汇编语言程序设计与调试方法。熟练掌握ASCII码转换成BCD码及码制转换程序设计方法。熟练掌握数值运算的程序时间和调试方法。熟练掌握DOS功能调用u 设计要求:1) 根据歌手大奖赛的要求,设计一个计算平均分的程序。2) 每位歌手的分数通过键盘输入。3) 评委人数共10人,去掉最高分和最低
5、分后,求平均值。4) 屏幕显示每位评委的打分和最后得分。题目七:字符串动画显示程序设计通过该题目的设计过程,学习字符串的动画显示,左移位、右移位显示的编程方法。熟练掌握宏指令的使用方法,熟练掌握汇编语言程序设计与调试方法。u 设计要求:1) 动态的显示一个字符串应用程序的标题栏。2) 采用左、右移位的显示方法,动态的显示一个字符串。动画程序设计一、设计要求:1. 以滚动方式输出小车动态行驶图形。2. 小车在公路上动态行驶,从屏幕左侧驶向屏幕右侧。在到达屏幕右侧后,公路下降一段距离并改变颜色,然后小车继续由左向右行驶。3. 当下降到屏幕底部时,再返回到屏幕顶部重复上述过程。4. 直到有键按下,程
6、序运行结束。二、设计思路:本题目重点考查BIOS中断调用中显示器控制的子程序调用。主要包括: 1. 显示器显示方式设置。 2. 背景颜色和前景颜色设置。 3. 写像素点等。三、参考程序 DATA SEGMENT LINE DW 10 ;定义行变量 COLOR DB 0 ;定义公路颜色 COLORl DB 0 ;定义 小车颜色 CORLUN DW 2 ;定义列变量 COUNTl DW 0 COUNT2 DW 0 COUNT3 DW 0 CAR-8 DB 00000011B,11100000B ; 车体模型 DB 00000010B,01010000B DB 00000110B,01011000B
7、 DB 01111111B,11111110B DB 11111111B,11111111B DB 11111011B,11101lllB DB 00001010B,00101000B DB 00000100B,00010000BDATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV DX,80 MOV AH,0FH INT 01HLL:MOV AL,COLOR ; 设置公路颜色 INC AL CMP AL,3 JBE TT SUB AL,3TT:MOV COLOR,AL ; 设置小车颜色 CMP
8、Al,l JZ TT3 INC AL CMP Al,3 JZ TT2TT3:INC ALTT2:MOV COLORl,AL MOV AX,LINE ;计算机行坐标 ADD AX,10 CMP AX,180 JBE TTl SUB AX,180 TTl:MOV LINE,AK ; 设置显示方式(320X200) MOV AX,0004H INT 10H MOV AH,0BH MOV BH,1 ;选择1号调色板 MOV BL,0 INT 10H MOV AH,0CH ; 写像素 MOV DX,LINE ADD DX,8 ;计算公路坐标 MOV CX,0 MOV AL,COLOR ;设置公路颜色RE
9、PET:MOV BX,3 PUSH AX INT 10H ; 画公路 POP AX INC CX CMP CX,319 JNZ REPET ;未到屏幕最右转 MOV AH,0CH ADD DX,LINE ;设置行坐标 MOV CX,CORLUM ; 设置列坐标 MOV SI,OFFSET CAR-8 ;取车模首地址 MOV COUNTl,8 ; 8行RETRY1:MOV COUNT2,2 ;每行2字节RETRY2:MOV COUNT3,8 ; 每字节8位RETRY3:ROL BYTE PTRSI,1 MOV AL,0 ;此位为0,置背景颜色 JNC NEXT MOV AL,COLOR1 ;此位
10、为1,置背景颜色NEXT:PUSH AX PUSH CX INT 10H ;画个点 POP CX POP AX INC CX ; 列加1 DEC COUNT3 JNZ RKTRY3 ;未画完8个点转 INC SI ;取下一个字节的车模信息 DEC COUNT2 ; JNZ RETRY2 ;车模信息未完转 INC DX MOV CX,CORLUM DEC COUNTl JNZ RETRY1 ;未画完8行转 MOV COUNT1,320+10 ;设置移动总次数 MOV CX,CORLUM ADD CX,15 ;取小车最右点的列坐标送CXREPETl:PUSH CX MOV COUNT2,16土1
11、;小车横向有16个点,外加1个空白点REPET2:MOV DX,LINE MOV COUNT3,8 ;车模向右移动1个像素位REPET3:MOV AH,0DH INT 10H ;读当前点 MOV AH,0CH PUSH CX INC CX INT 10H ;写当前右边的点 POP CX INC DX ;行坐标加1 DEC COUNT3 JNZ REPET3 ;车模向右移动1个像素位未完转 DEC CX ;修改列坐标 DEC COUNT2 JNZ REPET2 ;小车移动1个车体位未完转 POP CX INC CX ;修改列坐标 MOV AH,1 INT 16H JNZ EXIT ;有键按下,转
12、退出 DEC COUNTl JNZ REPETl JMP LL ;无键按下,继续执行EXIT: MOV AH,0 ;恢复文本显示方式 MOV AL,2 INT 10H MOV AH,4CH INT 21H CODE ENDS END START 四、课题设计要求:1. 读懂题目的设计思路,编程方法。2. 画出设计题目的程序框图。3. 根据课题的要求重新编写程序并调试通过4. 写出设计报告,打印程序清单,并加以注释释。音乐程序设计一、设计要求:1. 利用系统内部的发声电路,产生声音。2. 选择一首歌曲,对其进行编程。3. 运行程序后能够反复演奏这首歌曲。二、PC机发声系统1. 发声系统:PC机发声系统电路结构如图3-1 所示。8253/8254 2号计数器,口地址=42H