辽工大计算机硬件实验四 综合程序设计.doc

上传人:啊飒飒 文档编号:11554817 上传时间:2021-08-23 格式:DOC 页数:6 大小:57KB
返回 下载 相关 举报
辽工大计算机硬件实验四 综合程序设计.doc_第1页
第1页 / 共6页
辽工大计算机硬件实验四 综合程序设计.doc_第2页
第2页 / 共6页
辽工大计算机硬件实验四 综合程序设计.doc_第3页
第3页 / 共6页
辽工大计算机硬件实验四 综合程序设计.doc_第4页
第4页 / 共6页
辽工大计算机硬件实验四 综合程序设计.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《辽工大计算机硬件实验四 综合程序设计.doc》由会员分享,可在线阅读,更多相关《辽工大计算机硬件实验四 综合程序设计.doc(6页珍藏版)》请在三一文库上搜索。

1、实验四 综合程序设计(二)一、实验目的综合运用所学的汇编语言知识设计一个综合题目。1熟练掌握汇编语言程序设计的方法和原理及汇编语言程序设计在计算机行业中的作用。2熟练应用各种程序设计的原理和方法(顺序、选择、循环、子程序及中断调用)进行实际问题的分析,建立数学模型,正确确定所用的算法,画出程序流程图,根据流程图编制汇编语言程序,并能上机正确熟练调试汇编程序。3中断的作用及中断程序的编制方法,掌握系统功能子程序的调用方法,正确给出入口参数,准确利用得到的出口参数。二、实验准备知识18086/8088指令系统常用指令的格式及用法28086/8088宏指令的格式及用法3程序设计(1)8086/808

2、8源程序格式(2)程序设计基本方法:顺序、选择、循环及子程序的设计(3)输入/输出程序设计:DOS中断调用和BIOS中断调用的用法三、实验性质本实验为综合性实验。四、实验学时本实验学时为2学时。五、实验内容题目:简单的动画显示程序:参考下面的“汽车”图形的构成及运动样例,重新构成一个可运动的多几何图形,并在屏幕上模拟显示该图形的运动。提示:本题目的完成分为以下两部分:1、利用多个字符构成一个“汽车”图形R(1)【样例】参考图形: (2)该“汽车”所用符号由以下几个部分组成:字 母 R(车头):ASCII码为52H阴影符 :ASCII码为0B1H笑脸符 :ASCII码为01H或02H实心方块 :

3、ASCII码为0DBH字母O(车轮):ASCII码为4FH。(3)构成“汽车”的7个字符的定义:2、让“汽车”在屏幕上开动(1)清屏(2)在屏幕上画出(显示出)“汽车”,将上面构成的“汽车”图形利用BIOS中断调用输出在显示器上。(3)延时一个时间周期,产生视觉暂留,使图形清晰,利用延时子程序。(4)清除图形(利用同样前景色、背景色重画“汽车”图形)(5)改变“汽车”显示的行、列坐标。(6)返回(1)步重复显示,直到“汽车”开过去为止。六、实验要求1实验前要做好充分准备,包括程序框图,源程序清单,调试步骤,调试方法,以及对程序结果的分析等。2独立完成,严禁抄袭。3学会解决调试过程中的错误。七、

4、实验报告内容1写出源程序清单及在DEBUG状态下运行程序的过程。2写出调试过程中遇到的问题是如何解决的,并对调试过程中的问题进行分析。3写出调试的指令及运行结果,并对执行结果进行分析。4收获及体会。【附录1】构成“汽车”的7个字符的定义(ASCII码值、字符属性、相对位移量(行、列)按各字符显示顺序给出)data segmentcar db 7db 0dbh,7,0,0db 0dbh,7,0,1db 0b1h,70h,0,1db 52h,70h,0,1db 4fh,7,1,0db 4fh,7,0,-3db 2,7,-2,2char_cnt dw ?pointer dw ?line_on db

5、?col_on db ?data ends【附录2】让“汽车”在屏幕上开动-清屏clear_screen proc near push ax push bx push cx push dx mov ah,6 mov al,0 mov ch,0 mov cl,0 mov dh,24 mov dl,79 mov bh,7 int 10h pop dx pop cx pop bx pop ax ret clear_screen endp【附录3】在屏幕上显示出“汽车”,并将“汽车”图形利用BIOS中断调用输出在显示器上。move_shape proc near push ax push bx pus

6、h cx push dx push di mov ah,0fh int 10h sub ch,ch mov cl,di inc di mov char_cnt,cx mov pointer,di mov line_on,dh mov col_on,dlplot_next: add dh,di+2 add dl,di+3 cmp dl,80 jb mov_crsr call erase pop di pop dx pop cx pop bx pop ax retmov_crsr: mov ah,2 int 10h mov al,di mov bl,di+1 push cx mov cx,1 mo

7、v ah,09 int 10h pop cx add di,4 loop plot_next call dly_qrtr call erase jmp short plot_nextmove_shape endp【附录4】延时一个时间周期,产生视觉暂留,使图形清晰,利用延时子程序。dly_qrtr proc near push ax push cx push dx mov ah,01 mov cx,0 mov dx,0 int 1ahdelay: mov ah,00 int 1ah cmp dx,05h jb delay pop dx pop cx pop ax retdly_qrtr end

8、p【附录5】清除图形利用同样前景色、背景色重画“汽车”图形。erase proc near mov cx,char_cnt mov di,pointer mov dh,line_on mov dl,col_onerase_next: add dh,di+2 add dl,di+3 mov ah,2 int 10h mov al,di mov bl,0 push cx mov cx,1 mov ah,09 int 10h pop cx add di,4 loop erase_next mov cx,char_cnt mov di,pointer mov dh,line_on inc col_on

9、 mov dl,col_on reterase endp【附录6】模拟汽车开动程序的参考主程序stack1 segment para stack dw 40h dup(0) stack1 ends code segment assume cs:code,ds:data,ss:stack1main proc far push ds sub ax,ax push ax mov ax,data mov ds,ax call clear_screen lea di,car mov dh,10 mov dl,10 call move_shape retmain endpcode ends end main - 6 -

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1