资源描述:
《汇编语言实验程序》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实验5程序;namecar1.asmDATASEGMENTCARDB7;字符图形表DB52H,7,0,0DB0B1H,7,0,1DB0DBH,7,0,1DB0DBH,7,0,1DB4FH,7,1,0DB4FH,7,0,-3DB2,7,-2,1CHAR_CNTDW?POINTERDW?LINE_ONDB?COL_ONDB?DATAENDS;CODESEGMENTASSUMECS:CODE,DS:DATAMAINPROCFARPUSHDSSUBAX,AXPUSHAXMOVAX,DATA;初始化DSMOVDS,AXMOVAH,0;设置300×200彩
2、色图形方式MOVAL,4INT10HMOVAH,0BH;设置背景颜色MOVBH,0MOVBL,2INT10MOVAH,0BH;设置彩色调板MOVBH,01MOVBL,00INT10HCALLCLEAR_SCREEN;清屏LEADI,CAR;DI指向字符图形表MOVDH,5;从第5行5列位置开始MOVDL,5;显示汽车CALLMOVE_SHAPERETMAINENDP;CLEAR_SCREENPROCNEARPUSHAX;PUSHBXPUSHCXPUSHDXMOVAH,6;屏幕上卷功能MOVAL,0MOVCH,0;左上角行号MOVCL,0;左上角
3、列号MOVDH,24;右下角行号MOVDL,79;右下角列号MOVBH,7;卷入行属性INT10H;调用显示属性POPDX;恢复寄存器POPCXPOPBXPOPAXRET;返回主程序CLEAR_SCREENENDP;MOVE_SHAPEPROCNEARPUSHAX;PUSHBXPUSHCXPUSHDXPUSHDIMOVAH,0FH;取当前显示方式INT10HSUBCH,CH;清除计数器CX的高字节MOVCL,[DI];CL放循环次数INCDI;DI指向字符图形表中的第一个字符MOVCHAR_CNT,CX;保存循环次数MOVPOINTER,DIM
4、OVLINE_ON,DHMOVCOL_ON,DLPLOT_NEXT:ADDDH,[DI+2];改变行列指针ADDDL,[DI+3]CMPDL,80;出屏否?JBMOV_CRSRCALLERASEPOPDIPOPDXPOPCXPOPBXPOPAXRETMOV_CRSR:MOVAH,2;移动光标位置INT10HMOVAL,[DI]MOVBL,[DI+1];取字符值及属性PUSHCXMOVCX,1MOVAH,09;显示字符INT10HPOPCXADDDI,4;DI指向下一个字符LOOPPLOT_NEXTCALLDLY_QRTR;调用延时子程序CALL
5、ERASE;调用擦除子程序JMPSHORTPLOT_NEXTMOVE_SHAPEENDP;ERASEPROCNEARMOVCX,CHAR_CNTMOVDI,POINTERMOVDH,LINE_ONMOVDL,COL_ONERASE_NEXT:ADDDH,[DI+2]ADDDL,[DI+3]MOVAH,2INT10HMOVAL,[DI]MOVBL,0PUSHCXMOVCX,1MOVAH,9
INT10HPOPCXADDDI,4LOOPERASE_NEXTMOVCX,CHAR_CNTMOVDI,POINTERMOVDH,LINE_ONINCCOL_
6、ONMOVDL,COL_ONRETERASEENDP;DLY_QRTRPROCNEAR;延时子程序PUSHCXPUSHDXMOVDX,5000D11:MOVCX,2801D12:LOOPD12DECDXJNZD11POPDXPOPCXRETDLY_QRTRENDP;
CODEENDSENDMAIN实验6程序;namecd1.asmdatasegmentmess1db0dh,0ah,'--------------',0dh,0ahdb'
7、File
8、',0dh,0ahdb'
9、Edit
10、',0dh,0ahdb'
11、Processing
12、',0dh,0a
13、hdb'
14、Quit
15、',0dh,0ahdb'--------------',0dh,0ah,'$'messdb'PleasepressF,E,PorQ',0dh,0ah,'$'mesdb'(ENTERANYKEYTORETURN)',0dh,0ah,'$'mess2db0dh,0ah,'----FILE------',0dh,0ahdb'
16、
17、',0dh,0ahdb'
18、
19、',0dh,0ahdb'
20、
21、',0dh,0ahdb'
22、
23、',0dh,0ahdb'--------------',0dh,0ah,'$'mess3db0dh,0ah,'----ED
24、IT------',0dh,0ahdb'
25、
26、',0dh,0ahdb'
27、
28、',0dh,0ahdb'
29、
30、',0dh,0ahdb'
31、
32、',0dh,0ahdb