资源预览内容
第1页 / 共20页
第2页 / 共20页
第3页 / 共20页
第4页 / 共20页
第5页 / 共20页
第6页 / 共20页
第7页 / 共20页
第8页 / 共20页
第9页 / 共20页
第10页 / 共20页
亲,该文档总共20页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
南昌航空大学科技学院课程设计目 录一、摘要 .1二、设计的题目 .1图形转换 .1三、设计目的 .1四、设计内容 .14.1 程序的内容与要求 .14.2 程序运行条件 .24.3 输入/输出描述 .2五、设计思路 .3六、程序结构 .36.1 段定义说明 .36.2 子程序功能说明 .46.3 算法描述 .4(1)各模块功能实现 .4(2)典型指令的应用 .4七、程序流程图 .5八、文件的编辑、连接和运行结果 .68.1.汇编源程序文件(ASM,MASM) .68.2.连接目标文件(LINK) .78.3.运行可执行文件 .7九、程序的调试 .89.1程序结构设计特点 .89.2调试程序心得 .8十、小结与体会 .8十一、附录 .9源程序代码(简单注释) .9参考文献 .18组员分工 .18南昌航空大学科技学院课程设计微机原理 课 程 设 计 任 务 书201020 11 学年 第二学期 第 19 周19 周 题目 图形变换程序内容及要求结合微机原理知识,查阅有关资料,完成一个图形变换的程序编写,系统具有 4 种可选择的功能,按字母“Y”画一个由点组成的园;按字母“S”画一个由不同颜色填充的三角形;按字母“Z”画一个由不同颜色填充的矩形;按字母“Q”退出。进度安排1、查找资料,提出总体方案 1 天2、分析、设计、调试、实现 3 天3、检查、整理、写设计报告、小结 1 天学生姓名:指导时间:2011-6-27 至 2011-7-1 指导地点:F 楼 312 室任务下达 2011 年 6 月 27 日 任务完成 2011 年 7 月 1 日考核方式 1.评阅 2.答辩 3.实际操作 4.其它指导教师 系(部)主任南昌航空大学科技学院课程设计- 1 -一、摘要:微机原理与接口技术课程是电气信息类专业学生的一门重要基础课程,同时也是一门实践性和应用性很强的课程。本课程主要讲授微型计算机的基本工作原理、系统组成及接口技术和基本的汇编语言程序设计知识,通过学习从而为学生今后分析和设计微机应用系统打好基础。在理论教学的同时,如果忽视实践教学,学生对理论知识不能够很好的掌握,学习效果就会受到很大的影响。 本次课程设计主要是通过应用微机原理中汇编的几个步骤编辑、汇编、连接、运行或调试运行,使得在doc界面完成图形变换。关键词:微型计算机原理 接口技术 汇编语言 实践教学 doc 二、设计的题目:图形变换程序三、设计目的:1. 巩固和加深课堂所学知识。2. 将课本上的理论知识和实际应用有机的结合起来,培养同学们分析和解决实际问题的能力。 3. 通过对汇编语言程序代码的阅读、修改、设计,理解和掌握复杂的汇编语言应用程序的编程,提高实践编程能力。本程序要求按不同的键显示不同的图形,按“q”键退出。实质上通过做这道题目可以检查学生对汇编语言这门课程的基本知识的掌握程度。能用汇编语言熟练地运用顺序、选择、循环三大结构,进一步掌握各个指令的功能,特别是转向指令,让同学熟悉并掌握 DOS 系统功能调方法用及 BIOS 系统功能调用方法;同时在程序设计过程中熟悉并掌握各种指令的应用,知道编程的具体流程,以及掌握 DEBUG 的一系列的功能执行命令,及用它进行调试,运行功能。只有掌握汇编语言基本编程方法,掌握程序各部分功能及其相互联系、相互作用,才能把程序写出来,才能把程序写好。四、设计内容:4.1 程序的内容与要求:结合微机原理知识,查阅有关资料,完成一个图形变换的程序编写,系统具有 4 种可选择的功能,按字母“Y”画一个由点组成的园;按字母“S”画一个由不同颜色填充的三南昌航空大学科技学院课程设计- 2 -角形;按字母“Z”画一个由不同颜色填充的矩形;按字母“Q”退出。4.2 程序运行条件本程序可在 windows 98,windows 2000,windows xp 上运行。所需要工具软件为MASM2.0 及以上版本。4.3 输入/输出描述输入 Y输入 S南昌航空大学科技学院课程设计- 3 -输入 Z输入 q返回到 DOS 界面。五、设计思路:BIOS 调用中并没有现成的显示圆、三角形和矩形的功能,故编写了三个子程序,采用段内调用子程序的方法来实现.其中圆用在屏幕上显示 12 个小圆点以围成一个圆来实现,12 个小圆点的行列坐标事先定义在一个变量中.三角形和矩形的实现原理是采用控制写点的方式,行、列、块的颜色不是采用变量表示,此处的三角形用寄存器表示,使用了堆栈技术;矩形使用的也是寄存器,但没有使用堆栈.整个程序的结构如图所示。六、程序结构:6.1 段定义说明分为数据段 DSEG、堆栈段 SSEG 和代码段 CSEG。堆栈段是为一些字符串和图形的光标位置及其他一些数据分配空间;数据段是记录程序运行过程中所需的信息,包括字符信息,图形光标等;代码段则是程序算法部分,通过对各子程序的调用,实现图形转换功能。南昌航空大学科技学院课程设计- 4 -6.2 子程序功能说明子程序包括三个:函数名为 YUAN,SAN 和 ZHENG,分别具有画圆、画三角形和画矩形的功能。调用关系:根据指令 SA: CALL SANJMP INPUTZHEN:CALL ZHENGJMP INPUTYUA: CALL YUANJMP INPUT当转移到各标号时,调用不同的子程序,从而实现绘制图形。过程返回指令 RET 定义在子程序中,当执行完子程序后,跳转到 INPUT。参数传送方式:程序中用到利用寄存器传递参数和利用约定存储单元的方法传递参数。即把参数存放在寄存器或是存储单元中来实现主程序和子程序间的参数传递。6.3 算法描述(1)各模块功能实现:a. MAIN 模块功能:这是个主过程,是负责进入和退出图形转换程序的入口。利用指令:MOV AH,08 ;不带回显键盘输入,出口参数 alINT 21H来实现字符的输入,从而进入相应的子程序。b. YUAN 模块功能:实现画圆的功能。圆用在屏幕上显示 12 个小圆点以围成一个圆来实现,12 个小圆点的行列坐标事先定义在一个变量中。利用 CALL 指令直接实现从主函数调用。c. SAN 模块功能:实现画三角形功能。利用 CALL 指令直接实现从主函数调用。d ZHENG 模块功能:实现画矩形的功能。通过向四个方向滚屏,来实现绘制四个边。利用 CALL 指令直接实现从主函数调用。(2)典型指令的应用:程序中运用了大量的数据定义语句、数据传送指令及转移指令,并用到 DOC 功能调用和南昌航空大学科技学院课程设计- 5 -基本输入输出系统 BIOS 中的中断处理程序。典型的有 JZ 跳转指令,中断指令 INT 10H,INT 21H,如指令:MOV AL,2MOV AH,9MOV BL,0E0HINT 10H其中 AL 存放字符代码,AL=字符代码,AH=9 表示将字符和属性写到光标位置处,BL=属性。而指令 MOV AH,4CH/INT 21H,表示返回到 DOC 操作界面。七、程序流程图:程序开始运行后,先提示:please choose the letter y,s,z:,input q to quit 然后操作者选择一个字母,程序根据比较 :CMP AL,SJZ SACMP AL,ZJZ ZHENCMP AL,YJZ YUACMP AL,qJZ EXITMOV DX,OFFSET INFO2MOV AH,09INT 21H若为 S,则转到标号 SA,进一步调用子程序 SAN 来画出三角形;若为 Z,则转到标号ZHEN,进一步调用子程序 ZHENG 来画出矩形;若为 Y,则转到标号 YUA,进一步调用子程序YUAN 来画出圆。若为 q,则转到 EXIT,转到 DOC 操作页面。若不是以上的字符,则提示输入错误,显示 choose error!南昌航空大学科技学院课程设计- 6 -程序流程图如下所示:开始显示提示信息接收键盘输入是“Y”?是“S ”?是“Z”?Call yuanCall san是“q”?Call zheng显示出错信息退出YYYNNNNY程序流程图南昌航空大学科技学院课程设计- 7 -八、文件的编辑、连接和运行结果8.1.汇编源程序文件(ASM,MASM)由编辑程序所建立的 ASM 文件只是个文本文件,计算机无法执行。需要经过汇编程序的汇编,使其转为目标代码文件。它是通过调用宏汇编 MASM(或汇编程序 ASM
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号