




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、汇编语言课程设计任务书 课 程 设 计 说 明 书学生姓名: 学 号: 学 院: 中北大学信息商务学院 专 业: 自动化 题 目: 图形显示程序设计 指导教师: 职称: 讲师 2013年 6 月 8日 课程设计任务书 2012/2013 学年第 二 学期学 院: 中北大学信息商务学院 专 业: 自动化 学 生 姓 名: 学 号: 课程设计题目: 图形显示程序设计 起 迄 日 期: 6 月 8 日 6 月 14 日 课程设计地点: 指 导 教 师: 系 主 任: 下达任务书日期: 2013 年 6 月 8 日课 程 设 计 任 务 书1设计目的:1、培养学生理论联系实际的设计思想,提高学生综合运
2、用汇编语言课程理论知分析问题,解决问题的能力。2、通过查找,运用设计资料,完成工程设计所必备的基本训练。3、使同学更深入的了解计算机系统的有关知识,为以后的学习和系统开发奠定良好的基础。2设计内容和要求(包括原始数据、技术参数、条件、设计要求等):设计一个程序,该程序可以接收键盘输入的3个命令(s,z,y),各个命令的具体功能为:按下y键,画圆。按下s键,画变换颜色的三角形。按下z键,画变换颜色的矩形。按下q键,退出。3设计工作任务及工作量的要求包括课程设计说明书(论文)、图纸、实物样品等:(1) 设计任务及要求分析(2) 运行环境说明(3) 软件设计课题需要说明:软件思想,流程图,源程序及程
3、序注释(4) 调试记录及结果分析(5) 程序清单,软件演示(6) 参考文献课 程 设 计 任 务 书4主要参考文献:1汇编语言、微机原理及接口技术(第三版) 电子工业出版社。2微型计算机原理与接口技术 机械工业出版社。3 沈美明、温冬蝉编:“ibm-pc汇编语言程序设计第版”,清华大学出版社 4 陆忠华等编:“汇编语言程序设计”,科学出版社,1993. 5 杨季文等编:80x86 “编语言程序设计教程”,清华大学出版社,1998。5设计成果形式及要求:1、做同一个题目的学生,所采用的设计方法或参数不能完全相同。2、设计报告要写出详细的设计步骤和结果,并按照题目要求的顺序书写(手写、打印均可)。
4、6工作计划及进度: 时间(天) 内容安排1 分析设计准备3 编程调试阶段1 编写课程设计报告系主任审查意见: 签字: 年 月 日图形显示程序设计1 设计内容 设计一个程序,该程序可以接收键盘输入的3个命令(s,z,y),各个命令的具体功能为:按下y键,画圆。按下s键,画变换颜色的三角形。按下z键,画变换颜色的矩形。按下q键,退出。2 运行环境本案例的两个程序统一要求使用计算机低级语言-汇编语言实现。具体要求如下:(1) 软件环境:masm5.0编译软件,windows或dos操作系统,editplus或其他编辑软件,debug调试环境。(2) 硬件环境:8086或以上的cpu计算机一台。3 设
5、计思路bios调用中并没有现成的显示圆、三角形和正方形的功能,故编写了3个子程序采用段内调用的方法来实现。其中圆用在屏幕上显示12个小圆点以围成一个圆来实现,12个小圆点的行列坐标事先定义在一个变量中。三角形和矩形采用控制写点的方式实现,用寄存器表示三角形的行、列、块的颜色,并且使用了堆栈技术。矩形未使用堆栈技术。4 原理分析本课程设计可分为三个子程序,即显示矩形,显示三角形和显示圆的程序。设计之前要熟悉dos调用和bios调用,以便在dos界面上能输出图形和颜色,中断号功能中断号功能0h除法出错0eh软盘中断1h单步中断0fh并行打印机中断2h不可屏蔽中断10h显示中断3h断点中断11h取设
6、备信息4h溢出中断12h取内存容量5h打印屏幕中断13h磁盘8h8254系统定时中断14h异步通信9h键盘中断15h磁带0ah彩色图形接口中断16h键盘0bh异步通信串行口1中断17h打印机0ch异步通信串行口0中断18h驻留bios0dh硬盘中断19h引导装入程序5 程序流程图开始显示提示信息接收键盘输入是“y”?是“s”?是“z”?call yuancall san是“q”?call zheng显示出错信息退出yyynnnny6 程序清单dseg segmentinfo1 db 0dh,0ah,please choose the letter y,s,z: db 0dh,0ah,input
7、 q to quit,$info2 db 0dh,0ah,choose error!,$d3 dw 0total db 12dotyx db 50,160 db 60,135 db 60,185db 75,115db 75,205db 95,110db 95,210db 110,114db 110,210db 130,135db 130,195db 145,165dseg endssseg segment stackdb 200 dup(0)sseg endscseg segment assume cs:cseg, ds:dseg, ss:ssegstart: main proc far mo
8、v ax,dseg mov ds,ax mov ah,0 ;设置显示模式mov al,4 ;显示模式代号int 10h ;10h号中断,显示i/o程序input: lea dx,into1 ;要输出字符串首地址mov ah,9 ;在标准输出上显示一个字符串 int 21h mov ah,08 ;不带回显键盘输入,出口参数al int 21h cmp al,s jz sa cmp al,z jz zhen cmp al,y jz yua cmp al,q jz exit mov dx,offset info2 mov ah,09 int 21hsa: call sanjmp inputzhen:
9、 call zheng jmp inputyua: call yuan jmp inputexit: mov ah,4ch int 21hretmain endpsan proc near push ax push bx push cx push dx mov ah,0 mov al,12h int 10h ;显示i/o程序 mov al,1a0: mov dx,1 mov d3,1 mov cx,320a1: push cx push d3a2: mov ah,12 push ax int 10h ;显示i/o程序 pop ax inc cx sub d3,1 jnz a2 pop d3 a
10、dd d3,2 pop cx inc dx dec cx jne a1 inc a1 cmp al,5 jne a0 pop dx pop cx pop bx pop axretsan nedpzheng proc near push ax push bx push cx push dx mov ah,0fh ;取当前显示模式 int 10h mov ah,0 mov al,3 int 10h mov cx,1 ; 字符数量 mov ah,2 ;置光标位置 mov dh,5 ; 5行开始 mov dl,25 ;25列开始 int 10h ;*光标向下动*line: mov ah,2 int 1
11、0h mov al,2 ;字符代码 mov ah,9 ;将字符和属性写到光标位置处 mov bl,0e0h ; 字符黄色 int 10h inc dh ; 行增加 cmp dh,20 ; 20行 jne line jmp line1;*光标向右动*line1: mov ah,2 int 10h mov al,2 mov ah,9 mov bl,0e0h ;字符为黄色 int 10h inc dl ;列增加 cmp dl,55 ;55列 jne line1 jmp line2;*光标向上动*line2: mov ah,2 int 10h mov al,2 mov ah,9 mov bl,0e0h
12、 ; 字符黄色 int 10h dec dh ;行减少 cmp dh,5 ;5行 jne line2 jmp line3;*光标向左动*line3: mov ah,2 int 10h mov al,2 mov ah,9 mov bl,0e0h ;字符为黄色 int 10h dec dl ;列减少 cmp dl,25 ;25列 jne line3l00: mov ah,7 ;向下滚屏 mov al,14 ;下滚行数 mov bh,20h ;绿色,填空白行的属性 mov ch,6 ;窗口左上角行号 mov cl,26 ;窗口左上角列号 mov dh,19 ;窗口右下角行号 mov dl,54 ;窗
13、口右下角列号 int 10h;*时间控制*l01: mov ah,0 int 1ah ;时钟管理 cmp dl,10 jnz l01l1: mov ah,6 ;向上滚屏 mov al,14 mov bh,0f0h; ;白色 mov ch,6 mov cl,26 mov dh,19 mov dl,54 int 10hl2: mov ah,0 int 1ah ;时钟管理 cmp dl,15 jnz l2l3: mov ah,7 ;向下滚屏 mov al,14 mov bh,40h ;红色 mov ch,6 mov cl,26 mov dh,19 mov dl,54 int 10hl4: mov a
14、h,0 int 1ah cmp dl,30 jnz l4l5: mov ah,6 ;向上滚屏 mov al,14 mov bh,0d0h ; 品红 mov ch,6 mov cl,26 mov dh,19 mov dl,54 int 10hl004: mov ah,0 int 1ah ;时钟管理 cmp dl,10 jnz l004l005: mov ah,7 ;向下滚屏 mov al,14 mov bh,30h ; 青 mov ch,6 mov cl,26 mov dh,19 mov dl,54 int 10h;*时间控制* mov ah,2 ;置光标位置 mov dh,23 ;行号 mov
15、 dl,0 ;列号 int 10h pop dx pop cx pop bx pop axretzheng ednpyuan proc near push ax push bx push cx push dx mov ax,0004h int 10h mov bx,00 push bx mov ah,0bh int 10h mov bx,0003h mov ah,0bh int 10h mov bl,total mov si,offset dotyx mov ch,0 mov dh,chplo: mov dl,si mov cl,si+1 mov al,02h mov ah,0ch int 10h inc si inc si dec bl jnz plo mov bx,50 pop bx pop dx pop cx pop dx pop axretyuan endpcseg endsend start7 输入/输出描述输入y输入s 输入z输入q返回到dos界面。8 程序调试(1) 打开windows命令窗口,在exchange.exe程序所在目录下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 财务恢复合同
- 第五单元习作:介绍一种事物(教学设计)-五年级语文上册单元作文能力提升(统编版)
- 第14课 页面设置和打印教学设计-2025-2026学年小学信息技术(信息科技)五年级下册电子工业版(内蒙古)
- 热镀锌异形螺栓施工方案
- 2025-2030年风电行业市场前瞻:技术创新与风电并网问题研究报告
- 网络文学IP全产业链开发与2025年网络文学IP产业版权保护技术创新应用报告
- 世界杯集卡活动方案策划
- 菌肥营销方案
- 北海营销方案
- 弱电机房铝扣板施工方案
- 拼多多公司技能培训
- 写作技巧:三十六种故事创作套路
- 挖机挖方合同协议书模板
- 福建省2025-2026学年福州市高三年级第一次质量检测英语
- 道字的演变课件
- 教案2025秋形势与政策纪念抗战胜利坚定民族信念抗战胜利80周年
- 阀门安装施工组织方案(3篇)
- 《制作与测试我们的小船》课件
- 蒌叶栽培与管理技术
- 公路统计管理办法
- 《智能建造概论》高职完整全套教学课件
评论
0/150
提交评论