应用系统开发汇编

上传人:千****8 文档编号:116199058 上传时间:2019-11-16 格式:PPT 页数:67 大小:316.50KB
返回 下载 相关 举报
应用系统开发汇编_第1页
第1页 / 共67页
应用系统开发汇编_第2页
第2页 / 共67页
应用系统开发汇编_第3页
第3页 / 共67页
应用系统开发汇编_第4页
第4页 / 共67页
应用系统开发汇编_第5页
第5页 / 共67页
点击查看更多>>
资源描述

《应用系统开发汇编》由会员分享,可在线阅读,更多相关《应用系统开发汇编(67页珍藏版)》请在金锄头文库上搜索。

1、第6章 应用系统开发 第6章 应用系统开发 6.1 汽车动画程序开发 6.2 发声系统程序开发 开 始 第6章 应用系统开发 6.1 汽车动画程序开发 6.1.1 字符图形显示 6.1.2 动画程序的开发 返回本章首页 第6章 应用系统开发 6.1.1 字符图形显示 字符图形既可以在显示器上以简单的黑白字符图形既可以在显示器上以简单的黑白 图形字符显示,也可以在彩色显示器上以图形字符显示,也可以在彩色显示器上以 彩色的图形字符显示。通过调用彩色的图形字符显示。通过调用INT INT 10H10H的的 AH=0AH=0,AL=07AL=07可设置不同的显示方式,可设置不同的显示方式, 调用调用I

2、NTINT 10H10H的的AH=09HAH=09H,AH=0AHAH=0AH等可等可 显示字符。显示字符。 返回本节 第6章 应用系统开发 1动画显示的基础 2程序举例 6.1.2 动画程序的开发 第6章 应用系统开发 在屏幕上显示出动画的效果,可分在屏幕上显示出动画的效果,可分5 5步进行:步进行: l l 在屏幕上显示图形(单字符或多字符图形)。在屏幕上显示图形(单字符或多字符图形)。 l l 延迟一个时间周期,这样图形更清晰。延迟一个时间周期,这样图形更清晰。 l l 清除图形。清除图形。 l l 改变图形的行列坐标。改变图形的行列坐标。 l l 返回第一步,重复上述过程。返回第一步,

3、重复上述过程。 1动画显示的基础 第6章 应用系统开发 图图6.1 “6.1 “汽车汽车” ”各字符的相对位移量各字符的相对位移量 (2,1) (0,1)(0,1) (0,0)(0,0) (0,(0,3)3) (0,1)(0,1)(0,1)(0,1) (1,0)(1,0) 上 一 页 第6章 应用系统开发 【例【例6.16.1】在屏幕上显示一个开动的汽车如图】在屏幕上显示一个开动的汽车如图6.16.1所示所示 源程序如下:源程序如下:DATADATASEGMENTSEGMENT CARCARDB 7DB 7;字符图形表字符图形表 DBDB 52H 52H,7 7,0 0,0 0 DBDB 0B

4、1H 0B1H,7 7,0 0,1 1 DBDB 0DBH 0DBH,7 7,0 0,1 1 DBDB 0DBH 0DBH,7 7,0 0,1 1 DBDB4FH4FH,7 7,1 1,0 0 DBDB4FH4FH,7 7,0 0,-3-3 DBDB2 2,7 7,-2-2,1 1 2程序举例 第6章 应用系统开发 CHAR_CNTCHAR_CNTDW ? POINTERDW ? POINTERDW ?DW ? LINE_ONLINE_ONDB ? COL_ON DB ? COL_ON DB ?DB ? DATADATAENDSENDS ; CODECODESEGMENTSEGMENT ASS

5、UME CSASSUME CS:CODECODE,DSDS:DATADATA MAINMAIN PROCPROC FAR PUSH FAR PUSH DSDS SUBSUBAXAX,AXPUSHAXPUSHAXAX MOVMOV AXAX,DATADATA ;初始化初始化DSDS 上 一 页 第6章 应用系统开发 MOVMOV DSDS,AXAX MOVMOV AHAH,0 0;设置设置300200300200彩色图形方式彩色图形方式 MOVMOV ALAL,4 INT4 INT 10H 10H MOVMOV AHAH,0BH0BH;设置背景颜色设置背景颜色 MOVMOV BHBH,0 0 M

6、OV MOV BL BL,2 2 INTINT1010 MOVMOV AHAH,0BH0BH;设置彩色调板设置彩色调板 MOVMOV BHBH,01 MOV01 MOV BL BL,0000 INTINT10H10H CALLCALL CLEAR_SCREENCLEAR_SCREEN;清屏清屏 上 一 页 第6章 应用系统开发 LEALEADIDI,CARCAR;DIDI指向字符图形表指向字符图形表 MOVMOV DHDH,5 5;从第从第5 5行行5 5列位置开始列位置开始 MOVMOV DLDL,5 5 ;显示汽车显示汽车 CALLCALL MOVE_SHAPEMOVE_SHAPE RET

7、 MAINRET MAINENDPENDP ; CLEAR_SCREEN PROC NEARCLEAR_SCREEN PROC NEAR PUSHPUSH AXAX;保护寄存器保护寄存器 PUSHPUSH BXBX PUSHPUSH CXCX 上 一 页 第6章 应用系统开发 PUSHPUSH DXDX MOVMOV AHAH,6 6;屏幕上卷功能屏幕上卷功能 MOVMOV ALAL,0 0 MOVMOV CHCH,0 0;左上角行号左上角行号 MOVMOV CLCL,0 0 ;左上角列号左上角列号 MOVMOV DHDH,2424;右下角行号右下角行号 MOVMOV DLDL,7979;右下

8、角列号右下角列号 MOVMOV BHBH,7 7;卷入行属性卷入行属性 INTINT10H10H;调用显示属性调用显示属性 POPPOPDXDX;恢复寄存器恢复寄存器 上 一 页 第6章 应用系统开发 POPPOPCXCX POPPOPBXBX POPPOPAXAX RETRET;返回主程序返回主程序 CLEAR_SCREEN ENDPCLEAR_SCREEN ENDP ; MOVE_SHAPE PROC NEARMOVE_SHAPE PROC NEAR PUSHPUSH AXAX;保护寄存器保护寄存器 PUSHPUSH BX PUSHBX PUSHCXCX PUSHPUSH DX PUSHD

9、X PUSHDIDI 上 一 页 第6章 应用系统开发 MOVMOV AHAH,0FH0FH;取当前显示方式取当前显示方式 INTINT10H10H SUBSUBCHCH,CHCH;清除计数器清除计数器CXCX的高字节的高字节 MOVMOV CLCL,DIDI;CLCL放循环次数放循环次数 INCINCDI DI ;DIDI指向字符图形表中的第一个字符指向字符图形表中的第一个字符 MOVMOV CHAR_CNTCHAR_CNT,CXCX;保存循环次数保存循环次数 MOVMOV POINTERPOINTER,DIDI MOVMOV LINE_ONLINE_ON,DHDH MOV MOV COL_

10、ONCOL_ON,DLDL 上 一 页 第6章 应用系统开发 PLOT_NEXTPLOT_NEXT: ADDADDDHDH,DI+2DI+2;改变行列指针改变行列指针 ADDADDDLDL,DI+3DI+3 CMPCMPDLDL,8080 ;出屏否?出屏否? JBJBMOV_CRSRMOV_CRSR CALLCALLERASEERASE POPPOP DI DI POP POPDXDX POPPOPCX CX POP POPBXBX POPPOPAX AX RET RET 上 一 页 第6章 应用系统开发 MOV_CRSRMOV_CRSR: MOVMOVAHAH,2 2 ;移动光标位置移动光标

11、位置 INTINT10H MOV10H MOV ALAL, DI DI MOVMOVBLBL,DI+1DI+1;取字符值及属性取字符值及属性 PUSHPUSHCX CX MOV MOV CX CX,1 1 MOVMOVAHAH,0909;显示字符显示字符 INTINT10H 10H POP POPCXCX ADDADDDIDI,4 4;DIDI指向下一个字符指向下一个字符 LOOPLOOPPLOT_NEXTPLOT_NEXT CALLCALLDLY_QRTRDLY_QRTR;调用延时子程序调用延时子程序 第6章 应用系统开发 CALLCALL ERASEERASE;调用擦除子程序调用擦除子程序

12、 JMPJMPSHORT PLOT_NEXTSHORT PLOT_NEXT MOVE_SHAPEMOVE_SHAPEENDPENDP ; ERASE PROCERASE PROCNEARNEAR MOVMOV CXCX,CHAR_CNTCHAR_CNT MOVMOV DIDI,POINTERPOINTER MOVMOV DHDH,LINE_ONLINE_ON MOVMOV DLDL,COL_ONCOL_ON 上 一 页 第6章 应用系统开发 ERASE_NEXTERASE_NEXT: ADDADDDHDH,DI+2 DI+2 ADD ADDDLDL,DI+3DI+3 MOVMOV AHAH,2

13、 INT2 INT10H10H MOVMOV ALAL,DI MOVDI MOVBLBL,0 0 PUSHPUSH CX MOVCX MOVCXCX,1 1 MOV MOV AHAH,9 INT9 INT10H10H POPPOPCX ADDCX ADDDIDI,4 4 LOOPLOOP ERASE_NEXTERASE_NEXT MOVMOV CXCX,CHAR_CNTCHAR_CNT 上 一 页 第6章 应用系统开发 MOVMOV DIDI,POINTERPOINTER MOVMOV DHDH,LINE_ONLINE_ON INCINCCOL_ONCOL_ON MOVMOV DLDL,COL

14、_ONCOL_ON RETRET ERASEERASEENDPENDP ; DLY_QRTR PROC NEARDLY_QRTR PROC NEAR;延时子程序延时子程序 PUSHPUSH CXCX 第6章 应用系统开发 PUSHPUSH DXDX MOVMOV DXDX,50005000 D11D11: MOVMOV CXCX,28012801 D12D12: LOOPLOOP D12 DECD12 DECDXDX JNZJNZD11 POPD11 POPDXDX POPPOPCX RETCX RET DLY_QRTRDLY_QRTRENDPENDP CODECODE ENDSENDS END MAINEND MAIN 返回本节上 一 页 第6章 应用系统开发 6.2 发声系统程序开发 6.2.1 系统发声途径 6.2.2 发声应用程序举例 返回本章首页 第6章 应用系统开发 6.2.1 系统发声途径 18254定时器作为发声源 28255端口B(PB1位)作为发声源 返回本章首页 第6章 应用系统开发 18254定时器作为发声源 将定时器产生的方波信号同将定

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号