版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
課程設(shè)計(jì)
xx~XX學(xué)年第二學(xué)期
設(shè)計(jì)題目匯編語(yǔ)言程序設(shè)計(jì)課程設(shè)計(jì)-打字練習(xí)程序的設(shè)計(jì)
院(系)計(jì)算機(jī)科學(xué)與信息工程學(xué)院
專業(yè)__________網(wǎng)絡(luò)工程______________
提交日期.XX年7月5日..
上海應(yīng)用技術(shù)學(xué)院課程設(shè)計(jì)任務(wù)書
課程名稱匯編語(yǔ)言程序設(shè)計(jì)課程設(shè)計(jì)課程代碼B704207
設(shè)計(jì)題目匯編語(yǔ)言程序設(shè)計(jì)課程設(shè)計(jì)-打字練習(xí)程序的設(shè)計(jì)I題目序號(hào)
設(shè)計(jì)時(shí)間2014年6月30日——2014年7月5日
系(院)計(jì)算機(jī)科學(xué)與信息工程專業(yè)網(wǎng)絡(luò)工程班級(jí)12104332
一、課程設(shè)計(jì)任務(wù)(條件)、具體技術(shù)參數(shù)(指標(biāo))
本課程設(shè)計(jì)是《匯編語(yǔ)言程序設(shè)計(jì)》課程的后繼教學(xué)環(huán)節(jié),通過(guò)對(duì)一個(gè)較大型的、綜合性的應(yīng)用
程序進(jìn)行閱讀、修改、添加功能等工作,使學(xué)生對(duì)匯編語(yǔ)言程序設(shè)計(jì)有更進(jìn)一步的認(rèn)識(shí),提高閱讀理
解復(fù)雜程序的能力和程序設(shè)計(jì)能力。
根據(jù)所給的“typelesl.asm”應(yīng)用程序框架,在此基礎(chǔ)上修改和添加功能。
基本任務(wù)
1.認(rèn)真閱讀“typetest.asm”源程序,理解程序每一條指令在程序中的作用。繪制程序流程圖(簡(jiǎn)
略總圖,各模塊詳細(xì)流程圖),給程序中的關(guān)鍵語(yǔ)句(后跟分號(hào))作注釋;
2.設(shè)置輸入界面,用戶輸入密碼后才能進(jìn)入主菜單;
3.修改主菜單,在主菜單上顯示當(dāng)天日期;
4.修改主菜單,增加可供用戶選擇難度級(jí)別的選項(xiàng);
5.為用戶打分,正確輸入字母使用時(shí)間越少,得分越高:
6.修改程序,在屏幕右上隹顯示用戶得分、已輸入字母數(shù)、正確數(shù);
7.將程序中的“置光標(biāo)位置”程序段落用宏調(diào)用完成,添加“置光標(biāo)位置”宏定義。
擴(kuò)展任務(wù)
1.設(shè)置限定時(shí)間,到達(dá)該時(shí)間,用戶尚未得到要求的分?jǐn)?shù)時(shí),游戲停止;
2.到達(dá)限定時(shí)間,用戶得分達(dá)到預(yù)設(shè)的值時(shí),自動(dòng)提高難度等級(jí),屏幕變色;
3.修改程序,底行的笑臉字母消失后,不再在該列下落字母(提示:設(shè)置數(shù)組記錄笑臉字母的
存在與否)。笑臉字母全部消失后,游戲停止,顯示告別畫面,顯示用戶成績(jī)。
其他任務(wù)
自行設(shè)計(jì)新的功能。
二、對(duì)課程設(shè)訂成果的要求(包括課程設(shè)“說(shuō)明書、圖紙、圖表、實(shí)物等軟硬件要求)
1.分析原“l(fā)ypelesl.asm”程序結(jié)構(gòu)(見(jiàn)附件),畫出主程序粗略的流程圖和各個(gè)模塊的詳細(xì)流程
圖,每個(gè)功能模塊用文字說(shuō)明他們的功能(與對(duì)應(yīng)流程圖放在一起);
2.對(duì)已經(jīng)實(shí)現(xiàn)的功能(修改的、新編寫的)做詳細(xì)的說(shuō)明,并附上流程圖及程序清單(修改/增加
的指令請(qǐng)使用大寫字母,以示區(qū)別);
3.對(duì)該“打字練習(xí)程序”的進(jìn)一步設(shè)想;
4.對(duì)于有設(shè)想但最終未實(shí)現(xiàn)的功能的大致編程思路的闡述;
5.論述在設(shè)計(jì)過(guò)程中遇到的并且對(duì)你具有啟發(fā)性的問(wèn)題
三、課程設(shè)計(jì)工作進(jìn)度計(jì)劃:
周一:布置任務(wù),介紹程序功能和基本模塊。學(xué)生仔細(xì)閱讀原始源程序,在重要行添加注解。
周二;畫出主程序粗略的流程圖和各個(gè)模塊的詳細(xì)流程圖,對(duì)課程設(shè)計(jì)的基本任務(wù)進(jìn)行設(shè)計(jì),并
開(kāi)始編程。
周三?周四:設(shè)計(jì)程序及調(diào)試程序。同時(shí)著手撰寫課程設(shè)計(jì)報(bào)告。
周五:完成設(shè)計(jì),提交開(kāi)發(fā)完成的程序和課程設(shè)計(jì)報(bào)告,接受教師考評(píng)。
四、主要參考資料
[1]楊文顯,宓雙,胡建人.新編匯編語(yǔ)言程序設(shè)計(jì).清華大學(xué)出版社,2010
[2]朱玉龍,任文覽等.匯編語(yǔ)言程序設(shè)計(jì).清華大學(xué)出版社,2003
[3][美]KipR.Irvine.匯編語(yǔ)言程序設(shè)計(jì).電子工業(yè)出版社,2004
指導(dǎo)教師(簽名):教研室主任(簽名):楊晶鑫
2014年6月25日2014年6月25tl
1概述
本次課程設(shè)計(jì)主要是設(shè)計(jì)一個(gè)打字游戲,通過(guò)對(duì)一個(gè)較大型的、綜合性的應(yīng)用程序進(jìn)行閱
讀、修改、添加功能等工作,加深對(duì)匯編語(yǔ)言程序設(shè)計(jì)的認(rèn):只,提高閱讀理解復(fù)雜程序的能力和程
序設(shè)計(jì)能力。
本程序運(yùn)行后,出現(xiàn)主界面,按回車鍵出現(xiàn)由26個(gè)字母組成的亂序行,這時(shí)其中任
?字母落下,在鍵盤上敲入該字母,如果輸入正確,字母消失;按回車鍵進(jìn)入打字練習(xí);
按ESC鍵返回主界面;按空格鍵暫停;按'E'退出;程序包括自動(dòng)計(jì)分功能,根據(jù)打
字的快慢分別獲得不同的分?jǐn)?shù),根據(jù)打字的難度,分別變化不同的顏色,并且設(shè)置了用
戶名和密碼,使軟件運(yùn)行起來(lái)更加安全。
1.1基本功能
程序要包含以下幾個(gè)模塊:
菜單顯示模塊、字母顯示模塊、字母下落模塊、暫停處理模塊、退出返回模塊等。
其基本功能如下:
1.設(shè)置輸入界面,用戶輸入密碼后才能進(jìn)入主菜單;
2.在主菜單上顯示登天日期;
3.增加可供用戶選擇難度級(jí)別的選項(xiàng);
4.為用戶打分,正確輸入字母使用時(shí)間越少,得分越高;
5.屏幕右上角顯示用戶得分、已輸入字母數(shù)、正確數(shù);
1.2拓展功能
為了是用戶界面更加人性化和友好化,軟件中設(shè)置了三種游戲模式,并且每一步操
作都有提示,在基本功能之上,又添加了相應(yīng)的擴(kuò)展功能滿足用戶需要。
1.根據(jù)難度不同,設(shè)置不同的界面顏色你,等級(jí)越高,字母下降速度越快;
2.設(shè)置限定字母?jìng)€(gè)數(shù),到達(dá)該數(shù)目時(shí),游戲停止;
3..修改程序,底行的笑臉字母消失后,不再在該列下落字母笑臉字母全部消失后,
游戲停止,顯示告別畫面,顯示用戶成績(jī)。
1.3代碼的格式
本程序中為了簡(jiǎn)化代瑪,減少不必要的代碼重復(fù),程序中多次用到了宏調(diào)用:
為了代碼的整潔,本程序中所有代碼均有縮進(jìn)處理,標(biāo)記和代碼段都有縮進(jìn),是程
序看起來(lái)更加清楚明了。
宏定義一:
setcusormacropage1,row,column;設(shè)置光標(biāo)位置宏定
第1頁(yè)
pushax
pushbx
pushdx
movah,02h
movdh,row
movdl,column
movbh,pagc1
intlOh
popdx
popbx
popax
endm
宏定義二:
Init_boardermacrorow,col,char,dhdl,count;寫屏
Local11
movex,count
movdh,row
movdl,col
11:movah,02h
movbh,OOh
intlOh
pushex
movah,Oah
moval,char
movbh,OOh
movex,Olh
intlOh
popex
incdhdl
loop11
endm
宏定義三:
menumacrorow,col,text;菜單顯示宏定義
第2頁(yè)
movah,02h
movbh,OOh;頁(yè)號(hào)
movdh,row
movdl,col;送參數(shù)
intlOh
movah,09h
leadx,text;輸出內(nèi)容
int21h
endm
第3頁(yè)
2詳細(xì)設(shè)計(jì)說(shuō)明
為了使設(shè)計(jì)思路更加清晰,故進(jìn)行詳細(xì)設(shè)計(jì)說(shuō)明介紹。
2.1原utypetest.asmn程序結(jié)構(gòu)
圖2.1-1
第4頁(yè)
2.2已經(jīng)實(shí)現(xiàn)的功能(修改的、新編寫的)程序結(jié)構(gòu)
第5頁(yè)
第6頁(yè)
2.3各模塊功能
2.3.1用戶驗(yàn)證模塊:
(1:功能代碼:
MOVROW,08D;設(shè)置光標(biāo)位置密碼
PS2:
MOVAH,02H
MOVDH,ROW
MOVDL,20D
MOVBH,00D
INTIOH
INCROW
LEASLPASSWDl
LEADI,PASSWD
MOVCX,3
LEADX,STRING;輸入密碼
MOVAH,09H
INT21H
PS3:MOVAH,07H
INT21H
MOV[SI],AL
INCSI
MOVAH,02
MOVDL*”
INT21H
LOOPPS3
MOVCX,3
LEASLPASSWDl
NEXT:MOVAL,[SI]
CMPAL,[DI]
JNZPSI
INCDI
INCSI
LOOPNEXT
JMPPS
PSI:MOVAH,02H
MOVDH,ROW
MOVDL,20D
MOVBH,00D
INT10H
LEADX,STRING1
第7頁(yè)
MOVAH,09H
INT2IH
MOVAH,07
INT21H
INCROW
JMPPS2
(2:模塊流程圖:
圖2.3.1-1
第8頁(yè)
(3:運(yùn)行截圖:程序運(yùn)行后進(jìn)入用戶驗(yàn)證界面,提示用戶輸入密碼;
。c。:。C。。O。B。B。a。n。d。P。r。o。a。p。t。。-。。。41。2。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。B。。S。。D。。
Pleaseenterthepassword:
00000000000000000000000000000000000000000000000000000000000000000000000000000000
圖2.3-1
若密碼輸入錯(cuò)誤,提示重新輸入;
圖2.3-2
2.3.2功能選擇模塊:
第9頁(yè)
(1:功能代碼:
PS:CLEAR_SCREEN01D,01D,23D,78D,00000111B;清屏
MENU05D,15D,ZK;顯示菜單
MOVAH,2AH
INT21H;取系統(tǒng)日期
PUSHDX
MOVAX,CX
MOVDX,0FFFFH
CALLWRITEDEC
MOVAH,02H
MOVDL,Y
INT21H
POPDX
PUSHDX
MOVAL,DH
MOVAH,OOH
MOVDXQFFFFH
CALLWRITEDEC
MOVAH,02H
MOVDL;.,
INT21H
POPDX
MOVAL,DL
MOVAH,0
MOVDX,0FFFFH
CALLWRITEDEC;顯示系統(tǒng)日期
MENU09D,15D,MESO
MENU11D,18D,MES1
MENU13D,18D,MES2
MENU15D,18D,MES3
MENU17D,15D,MES4
MENU20D,15D,MES5
MOVAH,02H;設(shè)置光標(biāo)位置
MOVBH,OOH
MOVDH,22D
MOVDL,33D
INT10H
KEYIN:MOVAH,07H;從鍵盤輸入命令字符
INT21H
第10頁(yè)
CMPAL,ODH;和回車鍵作比較
JESET;回車鍵,開(kāi)始游戲
CMPAL,E;和“E”作比較
JEEXIT1;是“E”退出游戲
nEXTkCMPAL/X1;"X”
JNENEXT2
JMPSET
NEXT2:JMPKEYIN
EXIT1:JMPEXIT
(2:運(yùn)行截圖:
進(jìn)入主菜單后,可以看到系統(tǒng)提示時(shí)間,看到游戲說(shuō)明,可以選擇按“X”鍵進(jìn)入游戲模
式選擇,按“E"退回dos界面。
圖2.3-3
第11頁(yè)
對(duì)命令提示符
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooocooooooooooo
WELCOMETOPLAY2014.7.2
■
■
■
PressEnterkeytocontinue
Uhenaletterxsdvoppxng4.pleasehitit?
■
Pressspacekeytopause?
■
PressESCkeytoreturnmaininterface?
■
?Pressletter'E'toexit?
■
■
Press'X'tochooseleuel
■
■
):\TASM5>.
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooocooooooooooo
圖2.3-4
2.3.3游戲選擇模式:
(I:功能代碼:
SET:CLEAR_SCREEN01D,01D,23D,78D,0000011IB;清屏
SETCUSOR00H,lDD,20D
MOVAH,09H
LEADX,MES6
INT21H
MOVAH,07H
INT21H
CMPAL;1,
JEEASY
CMPAL,2
JENORMAL
CMPAL,3
JEHARD
JMPSET
EASY:
CLEAR_SCREEN01D,01D,23D,78D,0010111IB
MOVAX,9999H
JMPGO
NORMAL:
CLEAR.SCREEN()1D,O1D,23D,78D,00HUUB
MOVAX,5000H
JMPGO
第12頁(yè)
HARD:
CLEAR.SCREEN01D,01D,23D,78D,01011111B
MOVAX,3()()0H
GO:
MOVSPEED,AX
JMPBEGIN
(2:運(yùn)行截圖
選擇按“X”鍵進(jìn)入游戲模式選擇,選擇游戲等級(jí),分別輸入:1、2、3
COBBandProapt-412
00000000000000000000000000000000000000000000000000000000000000000000000000000000
1-easyleuel;2.normalleuel;3.hardleuel;
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
圖2.3-5
根據(jù)選擇的等級(jí)不同,進(jìn)入不同的游戲模式,同時(shí)改變界面模式:
第13頁(yè)
。c。〈。C。o。。**。a。n。。d。。Pr。o。a。p。t。。-。。。41。2。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
圖2.3-6
COBBandProapt-412口x|
00000000000000000000000000000000000000000000000000000000000000000000000000000000
圖2.3-7
第14頁(yè)
圖2.3-8
2.3.4游戲模塊:
(1:功能代碼:
BEGIN:
SETCUSOROOH,1D,2D;設(shè)置光標(biāo)位置為(0,2)
MOVAH,09H
MOVCHARACTERS,0
MOVSCORE。
MOVCORRECT,。
LEADX,MES7
INT21H
SETCUSOROOHJD,32D;設(shè)置光標(biāo)位置為(0,32)
MOVAH,09H
LEADX,MES8
INT21H
SETCUSOROOHJD,62D;設(shè)置光標(biāo)位置為(0,62)
MOVAH,09H
LEADX,MES9
INT21H
INIT_BOARDER23D,Old,Olh,dl,78d;寫屏寫笑臉?lè)?hào)
第15頁(yè)
SETCUSOROOH,2D,1D
MOVCX,78
LEASI,LETTERS
NEXTLETTER:
MOVAH,02H;顯示字母
MOVDL,[SI]
INT21H
INCSI
LOOPNEXTLETTER
START_GAME:
SETCUSOROOHJDJOD
INCCHARACTERS
MOVAX,CHARACTERS;統(tǒng)計(jì)字母?jìng)€(gè)數(shù)
MOVDX,-1
CALLWRITEINT
CMPCHARACTERS,10
JEOVER
JNES3
OVER:CLEAR_SCREEN01D,0iD,23D,78D,OOOOO111B;清屏
SETCUSOR()0HJ0D,20D
MOVAH,09H
LEADX,MES10
INT21H
SETCUSOROOHJ2D,20D
MOVAH,09H
LEADX,MES11
INT21H
MOVAX,SCORE
MOVDX,0FFFFH
CALLWRITEDEC;顯示成績(jī)
SETCUSOR00DJ4D,20D
MOVAH,09H
LEADX,MES12
INT21H
MOVAH,07H
INT21H
JMPPS
;超過(guò)10退回主菜單
S3:MOVAH,2CH
第16頁(yè)
INT21H;讀取系統(tǒng)時(shí)間DL帶回=百分之一秒
INCDL;
CMPDL,78
JNASGI
SUBDL,78
SGI:
MOVPRESENT_POSITION,DL
LEADI,LETTERS
ADDDI,WORDPTRPRESENT_POSITION;
DECDI;
MOVDL,PRESENT_POSITION;
MOVAH,02H
MOVBH,OOH
MOVDH,02H
INT10H
MOVCX,20D
NEXTROW:PUSHCX
MOVCX,SPEED
WAIT_FOR_KEY:;延遲
PUSHCX
MOVCXJOOO
DELAY:
LOOPDELAY
PUSHDX
MOVAH,06H;從鍵盤輸入字符
MOVDL,OFFH
INT21H
POPDX
JZPASS
CMPAL,1BH;如果鍵入ESC,則返回主菜單
JETO_START
CMPAL,n";如果鍵入SPACE,則游戲暫停
JNEPASSO
PAUSE:PUSHDX;暫停處理
MOVAH,06H
MOVDL,OFFH
INT21H
POPDX
第17頁(yè)
CMPAL,n"
JNEPAUSE
JMPPASS
TO.START:JMPSTART
PASSO:CMPAL,[DI];輸入字母正確!則字母消失
JEDISAPPEAR
PASS:POPCX
LOOPWAIT_FOR_KEY
DOWN:
MOVAH,OAH;在當(dāng)前光標(biāo)位置寫空格
MOVAL,"11
MOVBH,OOH
MOVCX,01H
INT10H
INCDH
MOVAH,02H;改變光標(biāo)位置
MOVBH,OOH
INT10H
MOVAH,OAH;在當(dāng)前光標(biāo)位置寫字母
MOVAL,[Dll
MOVBH,OOH
MOVCX,01H
INT10H
POPCX
LOOPNEXTROW;下一行
LETTER_OVER:
MOVAH,OAH
MOVAL,u"
MOVBH,OOH
MOVCX,01H
INT10H
INCDH
MOVAH,02H
MOVBH,OOH
INT10H
第18頁(yè)
MOVAH,OAH
MOVAL,n";
MOVBH,OOH
MOVCX,01H
INT10H
JMPNEXT_LETTER
DISAPPEAR:
;擊中字母后輸出空格
POPex
POPex
MOVAH,OAH;
MOVAL,"11;
MOVBH,OOH
MOVCX,01H
INT10H
SETCUSOROOH,1D,70D
PUSHDX
INCCORRECT
MOVAX,CORRECT;統(tǒng)計(jì)正確個(gè)數(shù)
MOVDX,-1
CALLWRITEINT
POPDX
SETCUSOROOHJD,40D;統(tǒng)計(jì)成績(jī)
CMPDH,CP
JLES2
JMPSI
不比較
S2:
INCSCORE
INCSCORE
JMPS4
SI:
INCSCORE
S4:MOVAX,SCORE;統(tǒng)計(jì)正確個(gè)數(shù)
MOVDX,-1
CALLWRITEINT
第19頁(yè)
NEXT_LETTER:MOVAH,02H;
MOVBH,OOH;
MOVDH,02H
MOVDL,PRESENT_POSITION;
1NT10H
MOVAL,[DI];出現(xiàn)下一個(gè)新字母的算法
ADDAL,7
CMPAL,7AH
JNANEXT_LETTER1
SUBAL,26
NEXT_LETTER1:MOVAH,OAH
MOVBH,OOH
MOVCX,01H
INT10FI;
MOV[DI],AL
JMPSTARTGAME
屏幕顯示字母?jìng)€(gè)數(shù),正確的個(gè)數(shù),以及成績(jī),26個(gè)字母隨機(jī)下落,通過(guò)變量,speed
來(lái)控制速度,當(dāng)字母輸入正確是,字母會(huì)消失,并在其他位置上隨機(jī)落下另外一個(gè)字母,
當(dāng)字母沒(méi)被擊中時(shí),字母下落,前一行消失,如果一直沒(méi)有被擊中,字母降落在最后一
行,擊中笑臉,笑臉將會(huì)消失,下一個(gè)隨機(jī)字母接著落下。
期間,輸入空格,游戲?qū)和?,?dāng)字母落下10個(gè)后,游戲結(jié)束,顯示成績(jī),進(jìn)入游
戲結(jié)束模式。
(2:運(yùn)行結(jié)果:
在字母沒(méi)有落到最后一行時(shí),用戶需輸入相應(yīng)的字母,輸入正確,字母消失,下一
個(gè)字母落下,如果沒(méi)有輸入,字母將一直下降,直到擊中笑臉為止,笑臉消失;
成績(jī)計(jì)算,當(dāng)輸入正傭時(shí),正確的個(gè)數(shù)會(huì)加一,同時(shí)根據(jù)字母消失的為止,系統(tǒng)自
動(dòng)判斷加一分還是兩分,越靠近屏幕上方,加分越多。
模式一:簡(jiǎn)單模式
第20頁(yè)
圖2.3-9
一般模式:
圖2.3-10
困難模式:
第21頁(yè)
圖2.3-11
2.3.5游戲結(jié)束模式:
(1:功能模塊:
MOVAX,CORRECT;統(tǒng)計(jì)正確個(gè)數(shù)
MOVDX,-1
CALLWRITEINT
POPDX
SETCUSOROOH,1D,40D;統(tǒng)計(jì)成績(jī)
CMPDH,CP
JLES2
JMPSI
S2:
INCSCORE
INCSCORE
JMPS4
SI:
INCSCORE
S4:MOVAX,SCORE;統(tǒng)計(jì)正確個(gè)數(shù)
MOVDX,-1
CALLWRITEINT
顯示成績(jī):
第22頁(yè)
SETCUSOR00H,l2D,20D
MOVAH,09H
LEADX,MES11
INT21H
MOVAX,SCORE
MOVDX,0FFFFH
CALLWRITEDEC;顯示成績(jī)
SETCUSOR00D,14D,20D
MOVAH,09H
LEADX,MES12
INT21H
MOVAH,07H
INT21H
JMPPS
;超過(guò)10退回主菜單
圖2.3-12
2.3.6退回主菜單:
程序運(yùn)行至此,輸入任意鍵退回主菜單:
第23頁(yè)
圖2.3-13
按“E”退回dos界面,游戲結(jié)束;
圖2.3-14
第24頁(yè)
3課程設(shè)計(jì)總結(jié)
3.1設(shè)計(jì)體會(huì)
課設(shè)一開(kāi)始,看到老師發(fā)下來(lái)的任務(wù)書,感覺(jué)困難好大。但是經(jīng)過(guò)老師對(duì)源代碼的
講解之后,加上自己的思考,感覺(jué)稍微有有了一些思路,但還是不夠細(xì)清晰,因?yàn)閰R編
語(yǔ)言不同于高級(jí)語(yǔ)言,對(duì)于高級(jí)語(yǔ)言,我們心中可以有一個(gè)非常清晰的思路,在實(shí)現(xiàn)功
能的時(shí)候非常得心應(yīng)手。但匯編語(yǔ)言不同,它是面向機(jī)器的語(yǔ)言。用它編寫程序時(shí)的思
路應(yīng)該按照機(jī)器執(zhí)行程序的思路來(lái)編寫,所以這個(gè)挑戰(zhàn)對(duì)我來(lái)說(shuō)非常大。所以我就在編
寫程序之前,通過(guò)全局把握,畫總的流程圖,然后根據(jù)各模塊的功能,畫分快塊的流程
圖,通過(guò)這樣,是我對(duì)整個(gè)程序有了更加全面深刻的了解。。
在編寫的時(shí)候,我也是按照別人的思路,一步一步進(jìn)行。很多地方看似簡(jiǎn)單,但是
等到自己親自實(shí)踐的時(shí)候就編的很復(fù)雜。匯編語(yǔ)言的前后聯(lián)系非常緊密,如果要改一點(diǎn)
東西的話整個(gè)程序的很多地方都要重新做,可以說(shuō)是牽一發(fā)而動(dòng)全身。所以在編寫的時(shí)
候要很仔細(xì),要記住前面已經(jīng)實(shí)現(xiàn)了那些功能,還有那些功能要實(shí)現(xiàn),這些必須記好,
否則程序會(huì)出錯(cuò),同樣在編程過(guò)程中,很多錯(cuò)誤都是經(jīng)老師指導(dǎo)才解決的,感覺(jué)自己有
時(shí)候考慮還是不夠充分。
通過(guò)這次課程設(shè)計(jì),我了解了匯編語(yǔ)言編寫程序的步驟:先確定程序要實(shí)現(xiàn)的功能,
接著定義需要的寄存器、存儲(chǔ)器,如果需要的話還要畫出流程圖。然后逐個(gè)模塊實(shí)現(xiàn)其
功能。如果將模塊分好了,再去實(shí)現(xiàn)它的功能就不是那么復(fù)雜了。
此次的課程設(shè)計(jì),提高了我閱讀和分析程序的能力。因?yàn)閯傄荒玫侥繕?biāo)代碼時(shí),有
太多的不明白,必須一行一行地分析其目的和功能。而時(shí)間又比較緊迫,所以我在比較
短的時(shí)間里分析出了代碼的道理。在這個(gè)過(guò)程中我的分析與模仿能力得到了提高。
最后要感謝宓老師這一個(gè)星期來(lái)的辛苦指導(dǎo),幫我解除了好多難點(diǎn),讓自己對(duì)匯編
語(yǔ)言有了進(jìn)一步的了解。
3.2系統(tǒng)改進(jìn)
由于時(shí)間關(guān)系,本系統(tǒng)還有諸多不完善,還有許多可以改進(jìn)的地方。首先我做的界
面不夠華麗,顯得很單調(diào)°其次,如果能隨著得分達(dá)到一定階段,難點(diǎn)自動(dòng)增加就更好
了。而且計(jì)分系統(tǒng)沒(méi)計(jì)時(shí)功能,如果結(jié)合計(jì)時(shí)功能,當(dāng)時(shí)間達(dá)到一定階段時(shí),自動(dòng)結(jié)束
游戲就好了。
第25頁(yè)
4軟件使用說(shuō)明
4.1用戶密碼:
運(yùn)行程序后用戶登錄密碼為:713
4.2運(yùn)行環(huán)境:
本游戲在Win32系統(tǒng)運(yùn)行;
4.3使用方法
(1:程序運(yùn)行后進(jìn)入用戶驗(yàn)證界面,提示用戶輸入密碼;
圖4.3-1
若密碼輸入錯(cuò)誤,提示重新輸入;
第26頁(yè)
c(COBBandProapt_412
。。。。。。。。。。。。。。。。。。。。。。。0。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。0。。。。。
Pleaseenterthepassword:***
pleaseenterthepasswordagain:
Pleaseenterthepassword:
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
圖4.3-2
(2:運(yùn)行截圖:
進(jìn)入主菜單后,可以看到系統(tǒng)提示時(shí)間,看到游戲說(shuō)明,可以選擇按“X”鍵進(jìn)入游戲模
式選擇,按“E"退回dos界面。
圖4.3-3
第27頁(yè)
圖4.3-4
(3:選擇按“X”鍵進(jìn)入游戲模式選擇,選擇游戲等級(jí),分別輸入:1、2、3
圖4.3-5
根據(jù)選擇的等級(jí)不同,進(jìn)入不同的游戲模式,同時(shí)改變界面模式:
第28頁(yè)
至國(guó)
3
4
4
2
.
3
3
9
,
6
m
7
圖4.3-8
(4:在字母沒(méi)有落到最后一行時(shí),用戶需輸入相應(yīng)的字母,輸入正確,字母消失,
下一個(gè)字母落下,如果沒(méi)有輸入,字母將一直下降,直到擊中笑臉為止,笑臉消失;
成績(jī)計(jì)算,當(dāng)輸入正詢時(shí),正確的個(gè)數(shù)會(huì)加一,同時(shí)根據(jù)字母消失的為止,系統(tǒng)自
動(dòng)判斷加一分還是兩分,越靠近屏幕上方,加分越多。
模式一:簡(jiǎn)單模式
圖4.3-9
第30頁(yè)
一般模式:
圖4.3-10
困難模式:
c'Co**andProapt-412-20
。。。。。。。。。。。。。0。。。。8。。。。。。0。。。0。。。。。。。。。。。8。。。。。。。0。。。0。。。。。。。。。。。0。。。。。。。。0。。。
0|charactescore:correct:|0
。1dnplzoecgprhcskuaxodfxfiiytpkdnxssuxrnofzogaebudjqnwwnzolxyphfsfxtudcgljukda
o|p
0°
p
p
0
p
0
p
p
0
p
0p
0p
0p
00
0p
o|□0o
oo
oo
o
Q?O00QQQQ000QQ000QQ0QQQQQQ00QQQQQQQ0000GB00?0000000030000000(^
圖4.3-11
第31頁(yè)
圖4.3-12
(5:退回主菜單:
程序運(yùn)行至此,輸入任意鍵退回主菜單:
圖4.3-13
按“E”退回dos界面,游戲結(jié)束;
第32頁(yè)
同命令提示符
WELCOMETOPLAY2014.7.2
PressEnterkeytocontinue
Uhenaletterisdropping,.pleasehitit?
Pressspacekeytopause?
PressESCkeytoreturnmaininterface?
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 30921.6-2025工業(yè)用精對(duì)苯二甲酸(PTA)試驗(yàn)方法第6部分:粒度分布的測(cè)定
- 培訓(xùn)服務(wù)協(xié)議
- 2026年臨床營(yíng)養(yǎng)支持合同
- 2025年青島市檢察機(jī)關(guān)公開(kāi)招聘聘用制書記員25人的備考題庫(kù)及參考答案詳解
- 2025年鯉城區(qū)東門實(shí)驗(yàn)小學(xué)頂崗合同教師招聘?jìng)淇碱}庫(kù)及完整答案詳解一套
- 2025年葫蘆島市生態(tài)環(huán)境局公開(kāi)遴選工作人員備考題庫(kù)及一套完整答案詳解
- 2025年濟(jì)寧市檢察機(jī)關(guān)招聘聘用制書記員的備考題庫(kù)(31人)含答案詳解
- 2025年首都醫(yī)科大學(xué)附屬北京朝陽(yáng)醫(yī)院石景山醫(yī)院派遣合同制職工招聘?jìng)淇碱}庫(kù)及答案詳解一套
- 2025年固鎮(zhèn)縣司法局選聘專職人民調(diào)解員16人備考題庫(kù)附答案詳解
- 2025年醫(yī)院醫(yī)保年度總結(jié)及工作計(jì)劃(五篇)
- 2025中原農(nóng)業(yè)保險(xiǎn)股份有限公司招聘67人筆試備考重點(diǎn)試題及答案解析
- 2025中原農(nóng)業(yè)保險(xiǎn)股份有限公司招聘67人備考考試試題及答案解析
- 2025年違紀(jì)違法典型案例個(gè)人學(xué)習(xí)心得體會(huì)
- 2025年度河北省機(jī)關(guān)事業(yè)單位技術(shù)工人晉升高級(jí)工考試練習(xí)題附正確答案
- GB/T 17981-2025空氣調(diào)節(jié)系統(tǒng)經(jīng)濟(jì)運(yùn)行
- 2025 年高職酒店管理與數(shù)字化運(yùn)營(yíng)(智能服務(wù))試題及答案
- 《公司治理》期末考試復(fù)習(xí)題庫(kù)(含答案)
- 藥物臨床試驗(yàn)質(zhì)量管理規(guī)范(GCP)培訓(xùn)班考核試卷及答案
- 四川專升本《軍事理論》核心知識(shí)點(diǎn)考試復(fù)習(xí)題庫(kù)(附答案)
- 加油站安全生產(chǎn)責(zé)任制考核記錄
- 供應(yīng)鏈管理專業(yè)畢業(yè)生自我鑒定范文
評(píng)論
0/150
提交評(píng)論