版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
猜數(shù)游戲設計實現(xiàn)1需求說明問描述1.1問題描述程序運行后自動產(chǎn)生一個之間的隨機整數(shù)游戲開始程序根據(jù)游戲者輸入的數(shù)字與所需猜測數(shù)字進行比較并給出響應游戲者根據(jù)程序響應再猜數(shù)字,最后得到正確數(shù)字。1.2需求說明程序應有操作提示,輸入和輸出,界面追求友好,最好是菜單式的界面。設計若干用例(測試數(shù)據(jù)),上級測試程序并分析評價)所設計的程序。2設計說明2.1簡要設計框圖如下:2.2簡要分析思想首先通過指令在程序中產(chǎn)生隨機數(shù)由鍵盤輸入的數(shù)字與其比較如果大于隨機數(shù),則提示輸入的數(shù)太大,請重新輸入;如果小于隨機數(shù),則提示輸入的數(shù)太小請重新輸入如果等于隨機數(shù)則提示正確果輸入的數(shù)不是十進制數(shù),則直接退出。3詳細的算描3.1隨機數(shù)的產(chǎn)生1通過查找各種資料知隨機數(shù)的產(chǎn)生也是一種算法通過種子數(shù)據(jù)計算出不同的隨機數(shù)。但,此次試驗,我通過對系統(tǒng)當前時間的提取來表示隨機數(shù),即用時間中的“秒”來作這個隨機數(shù)。指令為:movah,2ch;取系統(tǒng)時間,CH:CL=時間:分鐘;DH=秒int21h3.2從鍵盤輸入數(shù)據(jù)如果僅用指令:ah,01hInt21h來從鍵盤讀取數(shù)據(jù),則只能取一個字符,即,只能讀取一位數(shù)字;在試驗中通過反復調(diào)試,可以對每次輸入的數(shù)(存放al中)與“回車”的SCII比較,如果不是“回車則返回繼續(xù)輸入;如果是回車,則跳出,完成數(shù)據(jù)的輸入。每一次返回繼續(xù)輸入時,原來的al的數(shù)據(jù)要以個位加入到bx,即,bx=bx*10+al;這樣可以保證輸入的數(shù)據(jù)不會丟失。3.3數(shù)據(jù)的比較用輸入的數(shù)據(jù)(存放于)與隨機數(shù)(存放于a:mova,dx)比較;如果大于,則輸出提示數(shù)據(jù)太大,請重新輸入,并跳轉(zhuǎn)到鍵盤輸入數(shù)據(jù)指令;如果小于,則輸出提示數(shù)據(jù)太小,請重新輸入,并跳轉(zhuǎn)到鍵盤輸入數(shù)據(jù)指令;如果等于,則提示正確,并結(jié)束。其中,小于跳轉(zhuǎn)用;大于跳轉(zhuǎn)用ja;等于用jz。3.4其他指令:為了保持程序輸出結(jié)果的工整性,多用回車換行指令:MOVAH,02hMOVDL,0ahINT21hMOVDL,0dhINT21h使程序輸出界面更互動化提示性語句如:MOVAH,9MOVDX,OFFSETmess2MOV21h:使用該語句退出整個程序:MOVAH,4CHINT21H4源程序與行果(含試方法測試結(jié))4.1源程序2SEGMENTmess1mess2db"Yournumber:$"mess3db"Yourchangenumber:$"mess4dbthe
XCHGCX,10MULCXBX,AXJMPl0
l4:adw?codeSEGMENTassumecs:code,ds:data
AH,02h21hDL,0dh21hax,datads,axdx,offsetmess1int21hAH,02h
bx,ajbl1bx,ajal2bx,ajzl3
入值與隨機數(shù)比較;小于;大于;等于21hDL,0dh21h;當前時間的秒為隨機數(shù)int21hbx,0
l1:movdx,offsetmess3int21hAH,02h21hDL,0dh21hax,0bx,0jmpl0AH,1
;輸入十進制數(shù)21hCMPAL,0dhJZl4al,48jbexital,57ja
l2:movdx,offsetmess2int21hAH,02h21hDL,0dh21hax,03bx,0jmpl0l3:movdx,offsetmess4int21hexit:MOV21hDL,0dh21hah,4chint21hcode4.2執(zhí)行結(jié)果…>01結(jié)果:果1正確)G:\masm>01your55Yournumberispleaseyour25Yournumberissmaller,pleaseyournumber:40Yournumberispleaseyour30Yournumberissmaller,pleaseyournumber:35Yournumberissmaller,pleaseyournumber:37That'snumber!!!結(jié)果2入錯誤)G:\masm>014your12Yournumberis32Yournumberislarger,pleaseyournumber:45u(輸入了非數(shù)字符號“uG:\masm>5總結(jié)設計心得特點:我個人認為本次試驗的最大難點就是產(chǎn)生隨機數(shù)然而通過查詢發(fā)現(xiàn)匯編中產(chǎn)生隨機數(shù)的命令都很復雜,并且有些命令是我沒有見過的,經(jīng)過多次考慮,還是選擇了使用秒針隨機選中的數(shù)據(jù)作為隨機數(shù)這或許是一個特點也是一個不足!不足:雖然對匯編的基本指令格式印象深刻但是還是忘記了一些老師上課講過的指令方法。比如說,十進制數(shù)字的輸入,特別是輸出,雖然本次實驗沒有輸出十進制數(shù),但是仔細回想一下的話,對我也是一個考驗。另外,對各種的指令依然記得不甚牢靠,需要查找資料等。收獲與體會:通過這次的課程設計讓我重溫了一遍匯編語言的知識重新熟悉了各種匯編指令特別是對于算法思想有了一定的提高各種匯編指令的小技巧數(shù)據(jù)各種各樣的操作指令序列讓我感覺到匯編語言也能夠越學越讓人沉入容易讓人感到成功的喜悅!展望:雖然程序已經(jīng)寫完,但是還是遺憾不能夠弄懂真正的隨機數(shù)是怎樣
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 統(tǒng)編版二年級上冊《道德與法治》全冊教案
- 農(nóng)、林專用儀器賬務處理實例-記賬實操
- 2024年一季度碳交易市場運行與政策盤點-雙碳政策護航碳市場健康發(fā)展
- 介紹英文足球課件
- 2023年寧泌泰膠囊項目評價分析報告
- 2023年工具油項目評估分析報告
- 2024年紫外線強度觀測儀器項目評價分析報告
- 2019粵教版 高中美術(shù) 選擇性必修3 雕塑《第一單元 初探雕塑藝術(shù)》大單元整體教學設計2020課標
- 2024屆河北省衡水十三中高三下學期期終考前模擬數(shù)學試題
- 餐飲合作經(jīng)營合同協(xié)議書范本
- 內(nèi)分泌科季度非計劃重返住院PDCA質(zhì)量持續(xù)改進報告
- 《國有企業(yè)采購操作規(guī)范》【2023修訂版】
- 2024年安徽交控集團招聘筆試參考題庫含答案解析
- 古典主義時期音樂
- 2024年云南交投集團招聘筆試參考題庫含答案解析
- 如何培養(yǎng)孩子的家務勞動習慣
- 膠原蛋白相關(guān)項目實施方案
- 蘇科版八年級生物上冊知識點匯總
- Unit+6+Understanding+ideas高中英語外研版(2019)必修第一冊
- 龍華網(wǎng)站建設方案范文
- 建立有效的財務內(nèi)控體系
評論
0/150
提交評論