微机原理课程设计Word文档下载推荐.docx
- 文档编号:21427497
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:12
- 大小:36.25KB
微机原理课程设计Word文档下载推荐.docx
《微机原理课程设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计Word文档下载推荐.docx(12页珍藏版)》请在冰豆网上搜索。
PC机在运行时往往会遇到一些异常情况(如断电、算术运算溢出或操作错误等)或某些请求(如要求将一行字符打印输出、外存向主存送一批数据等)。
产生这些请求或异常情况事先无法预测,但是一旦发生,微处理器应该立即对它们做出响应,这就要求控制器具有处理这类问题的功能。
通常当这些情况出现时,由相应部件或设备向微处理器发出“中断请求”信号,待执行完当前指令后,微处理器响应该请求,终止当前执行的程序,转去执行中断程序,以便处理这些请求。
当处理完毕后,再返回原程序继续执行。
3程序设计
3.1设计思路
由随机数图设计要求可知设计主要分为以下几个步骤:
在屏幕上显示图形、一小段延时、显示下一个随机数图形。
程序分为主程序和子程序。
主程序主要用于初始化、控制每一次出现随机图形函数的循环、延时和清零。
子程序DISP中,实现的是图形显示的要求。
子程序RAND_PALLETTE实现的是调色板的调用。
子程序RAND_COLOR实现的是颜色的随机选取
设计过程中随机行坐标取0到39,纵坐标取100到199,随机长的范围为20到100,随机宽取10到40。
本程序是通过设置简单的有限循环来实现延迟的。
其中AL=0为清窗口,程序中设定的起始点和终止点坐标可以让子程序运行后清除整个屏幕。
3.2程序设计框图
开始
初始化
屏幕设置
调用调色板
使用随机颜色
显示矩形
延迟
清屏
N
CX=10
Y
结束
图3.1程序流程图
3.3程序代码
DATASEGMENT
LINEDW0;
矩形顶点的行
ROWDW0;
矩形顶点的列
SWIDTHDW0矩形的长
XKDW0矩形的宽
COLORDB0颜色
DATAENDS
STACKSEGMENT
DB200DUP(0)
STACKENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA,SS:
STACK
START:
MOVAX,DATA
MOVDS,AX
MOVAH,0
MOVAL,04H
INT10H设置320×
200彩色图形方式
MOVCX,10设置循环次数
SAN:
CALLRAND_PALLETTE
CALLRAND_COLOR
CALLDISP调用矩形显示
CALLDELAY
CALLCLEAR
LOOPSAN循环显示
MOVAH,4CH
INT21H返回DOS
DISPPROCNEAR
PUSHAX
PUSHCX
PUSHDX
PUSHSI
PUSHDI
MOVAH,0CH指明写点调用
MOVAL,COLOR取点的颜色
CALLRAND_SWIDTH
MOVDI,SWIDTH用于控制行显示循环
CALLRAND_SITE
MOVDX,LINE取点的行坐标
CALLRAND_XK
DISP_2:
MOVSI,XK控制列显示循环
MOVCX,ROW取显示点的列坐标
DISP_1:
INT10H完成点的显示
INCCX列坐标加1
DECSI
JNZDISP_1循环显示完一行的点
INCDX行坐标加1
DECDI
JNZDISP_2循环显示完行
POPDI
POPSI
POPDX
POPCX
POPAX
RET
DISPENDP
RAND_PALLETTEPROCNEAR
CALLRAND
MOVAL,BL
ADDAX,0FFH
MOVBL,2
DIVBL
MOVAL,AH
MOVAH,0BH
MOVBH,01
MOVBL,AL
INT10H设置调色板
RAND_PALLETTEENDP
RAND_COLORPROCNEAR
STI
MOVAH,0读时钟计数器值
INT1AH
MOVAX,DX清高6位
ANDAH,3
MOVDL,4除4,产生0~3余数
DIVDL
MOVBL,AH余数存BL,作随机数
CMPBL,0
JNZA保持随机颜色不为黑色
INCBL
A:
MOVCOLOR,BL
RAND_COLORENDP
RAND_SITEPROC
ANDAX,0FFH
MOVBL,40
MOVBL,AH
ANDBX,0FFH
MOVLINE,BX
MOVBL,100
ADDBX,100
MOVROW,BX
RAND_SITEENDP
RAND_SWIDTHPROC随机长子程序
MOVBL,81
ADDBX,20
MOVSWIDTH,BX
RAND_SWIDTHENDP
RAND_XKPROC随机宽
ADDBX,10
MOVXK,BX
RAND_XKENDP
RANDPROC
MOVDL,200除200,产生0~199余数
RANDENDP
DELAYPROCNEAR
MOVDX,50000
D1:
MOVCX,25000
D2:
LOOPD2
DECDX
JNZD1
DELAYENDP
CLEARPROCNEAR
PUSHBX
MOVAH,6
MOVAL,0
MOVCH,0
MOVCL,0
MOVDH,24
MOVDL,39
MOVBH,0
INT10H
POPBX
CLEARENDP
CODEENDS
ENDSTART
4调试分析与结果
4.1程序调试过程
启动全屏幕编辑软件MF2KI,输入源程序。
输入完毕后,按Ctrl+S保存程序,规定扩展名为*.ASM。
对源程序进行汇编。
源程序进行汇编有三个步骤:
第一个是汇编生成OBJ文件,即二进制目标文件,这是汇编的主要目的。
第二个是连接。
第三个是运行。
汇编过程中,如果源程序有语法错误,则汇编结束后,会指出源程序中的错误,这时可以通过修改源程序中的错误,最后,得到没有语法错误的OBJ文件。
当没有语法错误而又无法得到正确结果时,可用调试来进行验证。
它通过单步、设置断点等多种方式为我们提供非常有效的调试手段。
4.2程序运行结果
调试窗口如下:
图4.1调试窗口图
运行结果:
图4.2运行结果图
5心得体会
以前从没有学过关于汇编语言的知识,起初学起来感觉很有难度。
当知道要做课程设计的时候心里面感觉有些害怕和担心,担心自己不会或者做不好。
但是当真的要做的时候也只好进自己最大的努力去做,做到自己最好的。
我们在这个过程中有很多自己的感受,我想很多同学都会和我有一样的感受,那就是感觉汇编语言真的是很神奇,很有意思。
我们从开始的担心和害怕渐渐变成了享受,享受着汇编带给我们的快乐。
看着自己做出来的东西,心里面的感觉真的很好。
我想微机原理课程设计和其他课程设计有共同的地方,那就是不仅加深和巩固了我们的课本知识,而且增强了我们自己动脑,自己动手的能力。
但是我想他也有它的独特指出,那就是让我们进入一个神奇的世界,那就是编程。
对于很多学过汇编或者其他的类似程序的同学来说,这不算新奇,但是对于我来说真的新奇,很有趣,也使我有更多的兴趣学习微机原理和其他的汇编。
微机原理与接口技术是一门很有趣的课程,任何一个计算机系统都是一个复杂的整体,学习计算机原理是要涉及到整体的每一部分。
讨论某一部分原理时又要涉及到其它部分的工作原理。
这样一来,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。
所以,在循序渐进的课堂教学过程中,我总是处于“学会了一些新知识,弄清了一些原来保留的问题,又出现了一些新问题”的循环中,直到课程结束时,才把保留的问题基本搞清楚。
学习该门课程知识时,其思维方法也和其它课程不同,该课程偏重于工程思维,具体地说,在了解了微处理器各种芯片的功能和外部特性以后,剩下的是如何将它们用于实际系统中,其创造性劳动在于如何用计算机的有关技术和厂家提供的各种芯片,设计实用的电路和系统,再配上相应的应用程序,完成各种实际应用项目。
这次实验并不是很难,主要的困难来自对程序的理解。
总之,这次课程设计对于我们有很大的帮助,通过课程设计,我更加深入地理解了,微机原理课程上讲到的各种芯片的功能,以及引脚的作用,同时加深了对于主要芯片的应用的认识,同时在试验室的环境里熟悉了汇编程序的编写过程和运行过程,最后还提高了自己的动手能力。
感谢老师的悉心指导。
参考文献
[1]楼顺天.微机原理与接口技术[M].北京:
科学出版社,2006
[2]周明德.微机原理与接口技术.北京:
人民邮电出版社,2009
[3]马维华.微机原理与接口技术.北京:
科学出版社,2005
[4]马瑞芳.王会燃等.微机原理与接口技术要点与解题.西安:
西安交通大学出版社,2006
[5]牟琦.聂建平等.微机原理与接口技术.北京:
清华大学出版社,2006
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 课程设计