版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
課程設(shè)計(jì)說明書匯編語言課程設(shè)計(jì)院系:計(jì)算機(jī)科學(xué)和技術(shù)專業(yè)班級(jí):計(jì)科0904學(xué)號(hào): 21 學(xué)生姓名:李金龍 指導(dǎo)老師:段珊 年10月12日目錄課程設(shè)計(jì)題目信息檢索程序設(shè)計(jì) 3I、 設(shè)計(jì)內(nèi)容 3II、 2、設(shè)計(jì)要求 4III、 3、算法設(shè)計(jì) 5IV、 4、具體設(shè)計(jì) 7V、 5、調(diào)試和運(yùn)行 11VI、 6、課程設(shè)計(jì)心得體會(huì) 136.1設(shè)計(jì)體會(huì) 136.2調(diào)試過程及分析 14VII、 7.參考文件 16課程設(shè)計(jì)題目信息檢索程序設(shè)計(jì)設(shè)計(jì)內(nèi)容課程設(shè)計(jì)內(nèi)容以軟硬件綜合設(shè)計(jì)為主,要求同學(xué)們?cè)谠O(shè)計(jì)過程中,提倡獨(dú)立思索、深入鉆研精神和嚴(yán)厲認(rèn)真、一絲不茍、精益求精工作態(tài)度。依據(jù)課題要求,進(jìn)行深入分析和研究,充足搜集和利用現(xiàn)有資源和數(shù)據(jù)進(jìn)行設(shè)計(jì),確保設(shè)計(jì)水平和質(zhì)量。經(jīng)過知識(shí)綜合利用,加深對(duì)匯編語言程序設(shè)計(jì)理論和提升綜合編程能力認(rèn)識(shí),從而建立起匯編程序設(shè)計(jì)整體概念。學(xué)會(huì)匯編程序設(shè)計(jì)方法,深入掌握并體會(huì)設(shè)計(jì)方案優(yōu)劣對(duì)計(jì)算機(jī)性能發(fā)揮關(guān)鍵性。培養(yǎng)科學(xué)、獨(dú)立工作創(chuàng)新精神,取得課程設(shè)計(jì)實(shí)踐經(jīng)驗(yàn)2、設(shè)計(jì)要求完成一個(gè)信息檢索系統(tǒng)。在數(shù)據(jù)區(qū),有8個(gè)不一樣信息,編號(hào)0—7,每個(gè)信息包含50個(gè)字符。從鍵盤接收0—9之間一個(gè)編號(hào),然后在屏幕上顯示對(duì)應(yīng)編號(hào)信息內(nèi)容,按“q”鍵盤退出。依據(jù)要求,問題實(shí)現(xiàn)思緒是依據(jù)不一樣輸入序號(hào)來計(jì)算出對(duì)應(yīng)物理地址,實(shí)現(xiàn)不一樣信息輸出。對(duì)輸入項(xiàng)進(jìn)行判定,滿足不一樣條件,就會(huì)進(jìn)行對(duì)應(yīng)計(jì)算得出該序號(hào)下信息物理地址,進(jìn)而輸出出結(jié)果。信息顯示和其中單個(gè)字符輸出編成子程序使程序結(jié)構(gòu)愈加清楚。3、算法設(shè)計(jì)1.程序里9個(gè)不一樣信息組成一個(gè)信息表,對(duì)信息表查找是依據(jù)鍵盤接收編號(hào)來確定。2.然后依據(jù)編號(hào),(ax)=(al)*50計(jì)算對(duì)應(yīng)地址,然后調(diào)用display顯示3.程序中把顯示信息編成一個(gè)獨(dú)立子程序display,使得程序愈加清楚。4、具體設(shè)計(jì)信息檢索程序設(shè)計(jì)具體設(shè)計(jì):;*****************************************************************;**************名稱:信息檢索程序設(shè)計(jì)**********;*****************************************************************;*****************************************************************datasegment ;definedatasegmentmessdb'',13,10db'|Inputanumberbetween0and7|',13,10db'|Pressqtoquit|',13,10db'',13,10,'$';messagetableforty db 50 ;valueformulinstructionmsg0 db 'Iamaboy!'msg1 db 'Iamveryhappy!'msg2 db 'Helloeveryone!'msg3 db 'Welocometoourschool!'msg4 db 'Iloveyouforever!!'msg5 db 'Youaremyangel!'msg6 db 'Itisveryniceofyou!'msg7 db 'WhatcanIdoforyou,sir?'msg8 db 'Look!Thereisabridonthetree!'msg db 'Pleaseinputanumber:$'msg9 db 'Themessageis:$'crlf1 db 0dh,0ah,'$';errormessageerrmsg db 'error!invaliedparameter!!'dataends;*****************************************************************stack segment db 256dup(0);256bytesofstackspacetos label wordstack ends;*****************************************************************code segment;*****************************************************************main proc far ;mainpartofprogramassumecs:code,ds:data,ss:stackstart: ;startingexecutionaddress;setSStocurrentstackareamov ax,stackmov ss,axmov sp,offsettos;setupstackforreturnpush ds ;saveolddatasegmentsub ax,ax ;putzeroinAXpush ax ;saveitonstack;setDStocurrentdatasegmentmovax,data ;darareasegmentaddrmovds,ax ;intoDSregister;MAINPARTOFPROGRAMGOESHERE;begintoprocesscallshowbegin:lea dx,msg ;顯示提醒信息mov ah,09hint 21hmov ah,1int 21hcmp al,'q' ;判定為‘q’退出je exitsub al,'0' ;小于0跳轉(zhuǎn)errorjb errorcmp al,8 ;大于9跳轉(zhuǎn)errorjaerror;selectappropriatemessagefrommessagetablemov bx,offsetmsg0 mul forty;(ax)=(al)*50add bx,axcall displayjmp begin;defineerrorerror:call crlflea dx,errmsg mov ah,09hint 21hcall crlfcall crlfjmp begin;;Subroutinetodisplayamessageonthescreen;EnterwithBX-->messagetobedisplayed;Messageisassumeedtobe40characterslongdisplay proc nearcall crlflea dx,msg9mov ah,09hint 21hmov cx,50disp1: mov dl,[bx] mov ah,2 int 21h inc bx loop disp1 call crlf call crlf jmp begindisplayendp;crlf proc near mov dx,offsetcrlf1mov ah,9hint 21hretcrlfendp;show proc nearlea dx,messmov ah,09hint 21hretshowendp;exit: mov ax,4c00hint 21h;mainendp;*****************************************************************codeends;*****************************************************************endstart5、調(diào)試和運(yùn)行6、課程設(shè)計(jì)心得體會(huì)6.1設(shè)計(jì)體會(huì)經(jīng)過近兩個(gè)星期工作,才把課程設(shè)計(jì)完成。經(jīng)過這次課程設(shè)計(jì),我加深了對(duì)匯編語言了解,也對(duì)上課時(shí)所說語法有了深刻認(rèn)識(shí)。相對(duì)于以前學(xué)習(xí)高級(jí)語言,對(duì)匯編語言第一印象是很酷,因?yàn)樗艹橄?。懷著崇敬心情學(xué)著匯編語言,即使枯燥,不過每當(dāng)完成一個(gè)很簡單程序就會(huì)感到很有成就感。當(dāng)我剛開始選擇這個(gè)題目是因?yàn)闀旧嫌幸粋€(gè)相近代碼轉(zhuǎn)換,所以感覺這個(gè)題目應(yīng)該很好寫??墒堑鹊秸嬲齽?dòng)手時(shí)候就感到了困難。首先是對(duì)字符串輸入輸出處理,處理不了就改成了字母大小寫轉(zhuǎn)換是每次只輸入一個(gè)字母,然后依據(jù)其大小寫轉(zhuǎn)換,如大寫就轉(zhuǎn)換成小寫,不然反之。然而在隨即進(jìn)制轉(zhuǎn)換中用碰到了一樣問題,發(fā)覺這是一個(gè)不能不處理問題,隨即查閱了資料才處理。隨即實(shí)在數(shù)值轉(zhuǎn)換過程中對(duì)模塊設(shè)計(jì)上又出現(xiàn)了問題。最初構(gòu)想是設(shè)計(jì)六個(gè)模塊分別對(duì)應(yīng)對(duì)應(yīng)數(shù)值轉(zhuǎn)換功效??墒窃谌齻€(gè)寫好以后發(fā)覺了下面要寫代碼有很多反復(fù)地方,于是就把這些反復(fù)代碼定義成了子函數(shù)來使用然后發(fā)覺將程序根據(jù)輸入、輸出不一樣來分模塊,以BX作為連接,比原來程序更為簡練,邏輯上也愈加清楚,有種豁然開朗感覺。在改善程序過程中感到很有成就感。在編寫代碼過程中讓我充足感受到了不一樣編程語言之間差異。對(duì)和高級(jí)語言來說或許是很簡單一個(gè)程序或只需要調(diào)用已經(jīng)有函數(shù)庫,可是對(duì)于匯編來說卻要寫上幾十行甚至更多代碼??墒怯由羁塘私饬思拇嫫?、存放器之間數(shù)據(jù)流向,因?yàn)槊總€(gè)考慮不周全部會(huì)造成一大堆錯(cuò)誤出現(xiàn),常常令人感到一個(gè)無力感,想要放棄。當(dāng)程序一步步靠近完成,看著子函數(shù)一個(gè)個(gè)全部運(yùn)行成功,再組合到一起,那種喜悅是無和倫比,之前所受到苦楚又是那么微不足道。更怎強(qiáng)了我對(duì)匯編語言愛好。6.2調(diào)試過程及分析在進(jìn)行調(diào)試過程中碰到問題層出不窮,但大多是因?yàn)椴糠执中腻e(cuò)誤。剛開始碰到最多問題便是程序在編譯時(shí)沒有任何錯(cuò)誤,鏈接按鈕仍然是灰色不能夠鏈接,茫然不知所措。上網(wǎng)查找資料卻找不到任何對(duì)應(yīng)情況。于是就不用學(xué)校機(jī)房里MASM,換了另外一款編譯器(MasmforWindows集成試驗(yàn)環(huán)境.2),在進(jìn)行編譯時(shí)提醒犯錯(cuò)“Invalidcharacterinthefile”,在錯(cuò)誤信息表中查
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 對(duì)賭協(xié)議的合同范例
- 現(xiàn)金贖樓服務(wù)合同解讀
- 養(yǎng)殖場(chǎng)養(yǎng)殖肉豬承包合同
- 現(xiàn)摘核桃采購協(xié)議范本
- 供電局設(shè)備采購協(xié)議
- 鑄件庫存采購與銷售合同
- 購銷合同印花稅的計(jì)稅方法解讀
- 稅務(wù)審計(jì)開荒清潔合同
- 預(yù)售房屋買賣合同深入解析
- 2024年技術(shù)優(yōu)化咨詢協(xié)議
- 辦公大樓消防演練方案
- 江蘇省徐州市銅山區(qū)2023-2024學(xué)年八年級(jí)上學(xué)期期中質(zhì)量自測(cè)英語試題
- 甲狀腺術(shù)后淋巴漏護(hù)理
- 食品安全事故處置規(guī)章制度
- 解讀退役軍人安置條例制定微課
- DL 5190.2-2019 電力建設(shè)施工技術(shù)規(guī)范 第2部分:鍋爐機(jī)組
- 年產(chǎn)500萬只塑料包裝袋(厚度不低于0.025毫米)生產(chǎn)線建設(shè)項(xiàng)目環(huán)評(píng)報(bào)告書
- 《SYB創(chuàng)業(yè)培訓(xùn)》實(shí)操沙盤Ⅰ
- 洗碗外包合同
- 研學(xué)車輛安全責(zé)任協(xié)議書
- 鋼結(jié)構(gòu)施工施工質(zhì)量管理體系與保證措施
評(píng)論
0/150
提交評(píng)論