2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩32頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  計(jì)算機(jī)與通信學(xué)院</b></p><p><b>  軟件學(xué)院</b></p><p><b>  課程設(shè)計(jì)說(shuō)明書</b></p><p><b>  簡(jiǎn)易文本編輯器</b></p><p>  作 者:

2、 </p><p>  學(xué) 號(hào): </p><p>  專 業(yè): 軟件技術(shù) </p><p>  班 級(jí): 軟件2班 </p><p>  指導(dǎo)教師: <

3、;/p><p>  答辯時(shí)間: 2012/7/2 </p><p>  微型計(jì)算機(jī)原理及應(yīng)用課程設(shè)計(jì)任務(wù)書</p><p>  微型計(jì)算機(jī)原理及應(yīng)用課程設(shè)計(jì)內(nèi)容</p><p>  匯編語(yǔ)言是微型計(jì)算機(jī)原理及應(yīng)用的基礎(chǔ),微機(jī)主機(jī)和接口所要實(shí)現(xiàn)的功能都要通過(guò)匯編語(yǔ)言來(lái)實(shí)現(xiàn)。盡管匯編語(yǔ)言程序設(shè)計(jì)編程效率低,但其運(yùn)行效率高、

4、速度快。因此掌握匯編語(yǔ)言是學(xué)好微機(jī)原理和接口設(shè)計(jì)的第一步。</p><p>  設(shè)計(jì)一個(gè)功能較完備的文本編輯器,文本編輯器大小為24行80列,界面提供編輯菜單、文件操作菜單及簡(jiǎn)單幫助。</p><p>  微型計(jì)算機(jī)原理及應(yīng)用課程設(shè)計(jì)目的</p><p>  1、學(xué)習(xí)磁盤文件的建立、打開、關(guān)閉和讀寫等操作功能調(diào)用;</p><p>  2、實(shí)

5、現(xiàn)對(duì)磁盤文件的存??;</p><p>  3、熟練掌握BIOS、DOS的系統(tǒng)功能調(diào)用;</p><p>  微型計(jì)算機(jī)原理及應(yīng)用課程設(shè)計(jì)的要求</p><p>  1、利用DOS系統(tǒng)功能調(diào)用和BIOS功能調(diào)用設(shè)計(jì)一個(gè)有菜單欄的編輯窗口。在該窗口中可以實(shí)現(xiàn)文本的輸入;可以利用“Del”鍵、“BackSpace”鍵、“Home”鍵、“End”鍵、“↑”、“↓”、“←”、

6、“→”方向移動(dòng)鍵實(shí)現(xiàn)對(duì)輸入文本的全屏編輯。使用彩色組和背景顏色來(lái)設(shè)計(jì)界面顏色,利用DOS系統(tǒng)功能調(diào)用的磁盤文件存取技術(shù)實(shí)現(xiàn)文件的“信件”、“打開”、“保存”、“另存為”與“退出”功能。</p><p>  2、查閱文獻(xiàn)資料,一般在5篇以上;</p><p>  3、完成算法設(shè)計(jì)和程序設(shè)計(jì)、調(diào)試;</p><p>  4、撰寫課程設(shè)計(jì)說(shuō)明書;</p>&

7、lt;p><b>  5、做好答辯工作。</b></p><p>  微型計(jì)算機(jī)原理及應(yīng)用課程設(shè)計(jì)思路</p><p>  DOS提供了一組完成磁盤文件的建立、打開、關(guān)閉和讀寫等操作的功能調(diào)用。利用DOS和BIOS功能調(diào)用,匯編語(yǔ)言可實(shí)現(xiàn)對(duì)磁盤文件的存取。利用BIOS功能調(diào)用中的10H中斷類型,可以設(shè)置顯示模式,設(shè)置窗口背景、字符顏色等。調(diào)用DOS系統(tǒng)功能中的0

8、9號(hào)功能,可以實(shí)現(xiàn)顯示菜單信息字符串。調(diào)用BIOS中的鍵盤I/O</p><p>  中斷調(diào)用(16H中斷)中的0號(hào)功能,可以從鍵盤讀取字符,通過(guò)對(duì)“↑”、“↓”、“←”、“→”方向鍵以及“Del”、“BackSpace”、“Home”、“End”鍵的掃描碼的判斷,結(jié)合10H中斷中的02號(hào)、03號(hào)功能確定光標(biāo)的相應(yīng)移動(dòng),從而實(shí)現(xiàn)對(duì)輸入文本的全屏幕編輯。利用DOS系統(tǒng)功能調(diào)用中的文件管理功能,如建立文件(16H)、

9、打開文件(0FH)、讀文件(3FH)、寫文件(40H)等,可以實(shí)現(xiàn)對(duì)文件的操作。</p><p>  微型計(jì)算機(jī)原理及應(yīng)用課程設(shè)計(jì)提交的成果</p><p>  1. 設(shè)計(jì)說(shuō)明書一份,內(nèi)容包括:</p><p>  1) 中文摘要100字;關(guān)鍵詞3-5個(gè);</p><p><b>  2) 前言;</b></p&g

10、t;<p><b>  3) 設(shè)計(jì)內(nèi)容;</b></p><p><b>  4) 設(shè)計(jì)目的;</b></p><p><b>  5) 設(shè)計(jì)要求;</b></p><p>  6) 設(shè)計(jì)思路(包含程序流程圖);</p><p>  7) 軟件使用說(shuō)明書(核心界面

11、說(shuō)明);</p><p>  8) 設(shè)計(jì)總結(jié)、參考文獻(xiàn)、致謝等。</p><p>  2. 刻制光盤一張。</p><p><b>  設(shè)計(jì)的主要參考文獻(xiàn)</b></p><p>  1 宋杰,汪志宏,江敏,微機(jī)原理與接口技術(shù)課程設(shè)計(jì),機(jī)械工業(yè)出版社,2005.4</p><p>  2 周明

12、德,微型計(jì)算機(jī)系統(tǒng)原理及應(yīng)用習(xí)題集、習(xí)題解答與實(shí)驗(yàn)指導(dǎo),清華大學(xué)出版社,2005.7</p><p>  3 張開成,微型計(jì)算機(jī)原理,西南師范大學(xué)出版社,2006.8</p><p>  4 沈美明,溫冬嬋, IBM-PC匯編語(yǔ)言程序設(shè)計(jì)第2版,清華大學(xué)出版社,2006.5</p><p>  5 戴梅萼,史嘉權(quán), 微型機(jī)原理與技術(shù)-習(xí)題、實(shí)驗(yàn)和綜合訓(xùn)練題集,

13、清華大學(xué)出版社,2009.4</p><p>  各階段時(shí)間安排(共1周):</p><p>  2012年6月20日</p><p><b>  摘要</b></p><p>  計(jì)算機(jī)的不斷更新發(fā)展,在各個(gè)領(lǐng)域的應(yīng)用越來(lái)越多。而匯編語(yǔ)言是計(jì)算機(jī)能夠提供用戶使用的最快而又最好最有效的語(yǔ)言,也是能夠利用計(jì)算機(jī)所有硬件特性

14、并能直接控制硬件的唯一語(yǔ)言。因而,對(duì)程序的空間和時(shí)間要求很高的場(chǎng)合,匯編語(yǔ)言的應(yīng)用就顯得必不可少了,一些直接控制硬件的應(yīng)用場(chǎng)合,則更是非用匯編語(yǔ)言不可。</p><p>  通過(guò)具體的問(wèn)題分析、設(shè)計(jì)、調(diào)試、運(yùn)行程序。在實(shí)際問(wèn)題中鍛煉提高自己,增加了對(duì)本門課程內(nèi)容的理解,鍛煉了動(dòng)手能力。就這個(gè)程序具體而言:調(diào)用宏,顯示主界面,通過(guò)選擇不同的選項(xiàng),可以進(jìn)入不同的界面;采用DIOS功能的中斷,可以在任何時(shí)候退出當(dāng)前所在

15、的界面并通過(guò)選擇進(jìn)入其他的界面。這個(gè)程序最終通過(guò)菜單所提示的信息選取所要進(jìn)入的界面,獲得所要的功能。</p><p>  關(guān)鍵字:匯編語(yǔ)言,程序</p><p><b>  前言</b></p><p>  匯編語(yǔ)言是微型計(jì)算機(jī)原理及應(yīng)用的基礎(chǔ),微機(jī)主機(jī)和接口所要實(shí)現(xiàn)的功能都要通過(guò)匯編語(yǔ)言來(lái)實(shí)現(xiàn)。盡管匯編語(yǔ)言程序設(shè)計(jì)編程效率低,但其運(yùn)行效率高、

16、速度快。 不但要求有較高的理論水平,而且還要求有實(shí)際的動(dòng)手能力。因此掌握匯編語(yǔ)言是學(xué)好微機(jī)原理和接口設(shè)計(jì)的第一步。</p><p>  本課程設(shè)計(jì)的主要目的是提高實(shí)踐能力,包括提高匯編等語(yǔ)言的編程能力,長(zhǎng)期以來(lái),注重書本知識(shí),輕視實(shí)際動(dòng)手設(shè)計(jì)能力是教學(xué)中普遍存在的現(xiàn)象。進(jìn)行課程設(shè)計(jì)的目的就是要改變這種狀況,使學(xué)習(xí)者既具有完備的理論知識(shí),也能夠解決在實(shí)際學(xué)習(xí),生活工作中遇到的問(wèn)題。學(xué)生應(yīng)該能夠把學(xué)習(xí)到的理論知識(shí)運(yùn)用

17、到實(shí)際中去,將知識(shí)轉(zhuǎn)變?yōu)閷?shí)際的能力,同時(shí)通過(guò)這些理論知識(shí)和實(shí)際的應(yīng)用推動(dòng)理論和實(shí)踐的發(fā)展。</p><p><b>  目錄</b></p><p><b>  一、設(shè)計(jì)內(nèi)容1</b></p><p><b>  二、設(shè)計(jì)目的1</b></p><p><b> 

18、 三、設(shè)計(jì)要求1</b></p><p><b>  四、設(shè)計(jì)分析1</b></p><p><b>  五、操作說(shuō)明2</b></p><p><b>  六、程序設(shè)計(jì)2</b></p><p>  七、軟件使用說(shuō)明書4</p><p

19、><b>  八、設(shè)計(jì)總結(jié)6</b></p><p><b>  致 謝7</b></p><p><b>  參考文獻(xiàn)8</b></p><p><b>  源程序9</b></p><p><b>  一、設(shè)計(jì)內(nèi)容</b&

20、gt;</p><p>  設(shè)計(jì)一個(gè)功能較完整的文本編輯器,文本編輯器大小為24行80列。</p><p><b>  二、設(shè)計(jì)目的</b></p><p>  學(xué)習(xí)磁盤文件的建立,打開,關(guān)閉和讀寫等操作的功能調(diào)用,實(shí)現(xiàn)對(duì)磁盤文件的存取。熟練掌握BIOS,DOS的系統(tǒng)功能調(diào)用。</p><p><b>  三、

21、設(shè)計(jì)要求</b></p><p>  利用DOS系統(tǒng)功能調(diào)用和BIOS功能調(diào)用設(shè)計(jì)一個(gè)有菜單欄的編輯窗口。再該窗口中可以實(shí)現(xiàn)文本的輸入;可以利用“Del”鍵,“BackSpace”鍵,“Home”鍵,“End”鍵,“↑”,“↓”,“←”,“→”鍵以及“Del”,“Ins”,“BackSpace”,“End”,“Home”鍵的掃描碼的判斷,結(jié)合10H中斷中的02號(hào),03號(hào)功能確定光標(biāo)的相應(yīng)方向移動(dòng)鍵實(shí)現(xiàn)

22、對(duì)輸入文本的全屏幕編輯。使用彩色組合背景顏色來(lái)設(shè)計(jì)界面顏色,;利用DOS系統(tǒng)功能調(diào)用的磁盤文件存取技術(shù)實(shí)現(xiàn)文件的“新建”,“打開”,“保存”,“另存為”與“退出”功能。</p><p><b>  四、設(shè)計(jì)分析</b></p><p>  本案例充分應(yīng)用了DOS和BIOS的中斷功能。</p><p>  DOS提供了一組完成磁盤文件的建立,打開

23、,關(guān)閉和讀寫等操作的功能調(diào)用。利用DOS和BIOS的功能調(diào)用,匯編語(yǔ)言可實(shí)現(xiàn)對(duì)磁盤文件的存取。對(duì)磁盤文件的管理有文件代號(hào)方式下的管理和文件控制塊方式下的管理兩種方式。</p><p>  利用BIOS功能調(diào)用中的10H中斷類型,可以設(shè)置顯示模式,設(shè)置窗口背景,字符顏色等。</p><p>  調(diào)用DOS系統(tǒng)功能中的09號(hào)功能,可以實(shí)現(xiàn)顯示菜單信息字符串。調(diào)用BIOS中的鍵盤I/O中斷調(diào)用(

24、16H中斷)中的0號(hào)功能,可以從鍵盤讀取字符,通過(guò)對(duì)“↑”,“↓”,“←”,“→”方向移動(dòng)移動(dòng),從而實(shí)現(xiàn)對(duì)輸入文本的全屏幕編輯。利用DOS系統(tǒng)功能調(diào)用中的文件管理功能,如建立文件(16H),打開文件(0FH),讀文件(3FH)寫文件(40H)等,可以實(shí)現(xiàn)對(duì)文件的操作。</p><p><b>  五、操作說(shuō)明</b></p><p>  運(yùn)行可執(zhí)行文件TEXTEDIT

25、.EXE,輸入文本,利用Del鍵,BackSpace鍵,Home鍵,End鍵,上下左右方向移動(dòng)鍵對(duì)文本進(jìn)行全屏幕編輯。編輯完成后,按F1鍵激活菜單,下移光標(biāo),選擇SAVE,輸入文件名。也可以選擇File菜單的其他菜單項(xiàng),它們的功能均可實(shí)現(xiàn)。按F10鍵激活幫助,按Esc鍵退出幫助。</p><p>  要指出的是,本案例要產(chǎn)生的只是示范性的簡(jiǎn)易的文本編輯器,其中包含的只有基本的框架,很多方面考慮并不全面,尚需完善。

26、例如沒有實(shí)現(xiàn)編輯菜單,在編輯狀態(tài)下用退格或刪除鍵刪除字符時(shí),后面的字符不會(huì)自動(dòng)前移等。對(duì)于這些不足的地方讀者可以自行考慮補(bǔ)充,再加以改進(jìn)使其更正確,全面。</p><p><b>  六、程序設(shè)計(jì)</b></p><p><b>  流程圖如圖</b></p><p><b>  入口 </b><

27、;/p><p><b>  圖1.流程圖</b></p><p><b>  七、軟件使用說(shuō)明書</b></p><p>  雙擊可執(zhí)行文件wbbjq.exe,在出現(xiàn)的界面中輸入任意文本容,利用DEL鍵、BACKSPACE鍵、HOME鍵、END鍵、上下左右光標(biāo)鍵對(duì)文本進(jìn)行全屏幕編輯,按f1鍵激活菜單file,下移光標(biāo),選擇sa

28、ve,輸入文件名。也可以選擇FILE菜單的其他菜單項(xiàng),他們的功能均可實(shí)現(xiàn)。按f10激活幫助,按ESC鍵退出幫助。</p><p><b>  圖2. 編輯</b></p><p><b>  圖3. 匯編</b></p><p><b>  圖4.查詢</b></p><p>

29、<b>  圖5.連接</b></p><p><b>  圖6.運(yùn)行界面</b></p><p>  圖7. FILE 下拉菜單</p><p>  圖8. F10幫助界面</p><p><b>  八、設(shè)計(jì)總結(jié)</b></p><p>  

30、通過(guò)本次課程設(shè)計(jì),使我們對(duì)匯編語(yǔ)言的語(yǔ)法結(jié)構(gòu)和基本語(yǔ)言有了較為清楚的了解;同時(shí)通過(guò)我們大家合作共同努力都認(rèn)真設(shè)計(jì)和編寫代碼,我們也將書上每章的知識(shí)大致的復(fù)習(xí)了一遍,加深了我們的印象,通過(guò)設(shè)計(jì)我們深刻認(rèn)識(shí)到一個(gè)清晰明朗的流程圖對(duì)程序的設(shè)計(jì)是十分重要的。在設(shè)計(jì)中,我們?cè)跊]有先畫流程圖的情況下就開始編寫代碼,結(jié)果是我們弄得一頭污水,實(shí)在是無(wú)法進(jìn)行了,后來(lái)經(jīng)過(guò)我們大家商議,我們各自分工,在弄清題意的情況下,畫了程序流程圖,并按此開始編寫代碼,結(jié)

31、果受益匪淺。是我們?cè)谧疃痰臅r(shí)間里完成了這次課程設(shè)計(jì)。通過(guò)這次課設(shè)使我們知道了團(tuán)隊(duì)的力量是很強(qiáng)大的,我們以后不管在生活中還是在學(xué)習(xí)生活中都要學(xué)會(huì)發(fā)揮團(tuán)隊(duì)的力量。</p><p><b>  致 謝</b></p><p>  衷心地感謝任老師在這學(xué)期里對(duì)我的諄諄教導(dǎo),孜孜不倦地陪伴著我們一起走過(guò)大一的歲月,通過(guò)老師的教導(dǎo),使我對(duì)計(jì)算機(jī)有了更深層次的了解和認(rèn)識(shí),同時(shí)也讓我

32、獲得了許多以前無(wú)法學(xué)到的新知識(shí),這對(duì)我在以后的學(xué)習(xí)和人生路都起到了很大的幫助。</p><p>  感謝張老師在百忙之中來(lái)為我們作指導(dǎo),不顧天氣的熾熱難耐,為了我們的課程設(shè)計(jì)能夠早日完成,不辭辛苦的來(lái)為我們作指導(dǎo)。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 宋杰,汪志宏,江敏,微機(jī)原理與接口技術(shù)課程設(shè)計(jì),機(jī)械工

33、業(yè)出版社,2005.4</p><p>  [2] 周明德,微型計(jì)算機(jī)系統(tǒng)原理及應(yīng)用習(xí)題集、習(xí)題解答與實(shí)驗(yàn)指導(dǎo),清華大學(xué)出版社,2005.7</p><p>  [3] 張開成,微型計(jì)算機(jī)原理,西南師范大學(xué)出版社,2006.8</p><p>  [4] 沈美明,溫冬嬋, IBM-PC匯編語(yǔ)言程序設(shè)計(jì)第2版,清華大學(xué)出版社,2006.5</p>

34、<p>  [5] 戴梅萼,史嘉權(quán), 微型機(jī)原理與技術(shù)-習(xí)題、實(shí)驗(yàn)和綜合訓(xùn)練題集,清華大學(xué)出版社,2009.4</p><p><b>  源程序</b></p><p>  RED_CHR MACRO ;讀取字符宏定義</p><p><b>  MOV AH,0&l

35、t;/b></p><p><b>  INT 16H</b></p><p><b>  ENDM</b></p><p>  STRING MACRO P1 ;輸入字符光標(biāo)</p><p><b>  MOV AH,9</

36、b></p><p><b>  LEA DX,P1</b></p><p><b>  INT 21H</b></p><p><b>  ENDM</b></p><p>  WIN MACRO OPR1,OPR2,OPR3,OPR4,OPR5,OPR6 ;建立窗口

37、</p><p>  MOV AH,06H</p><p>  MOV AL,OPR1</p><p>  MOV BH,OPR2</p><p>  MOV CH,OPR3</p><p>  MOV CL,OPR4</p><p>  MOV DH,OPR5</p><p

38、>  MOV DL,OPR6</p><p><b>  INT 10H</b></p><p><b>  ENDM</b></p><p>  POS_CURSE MACRO OP1,OP2,OP3 ;定義光標(biāo)位置</p><p><b>  MOV

39、AH,2</b></p><p>  MOV BH,OP1</p><p>  MOV DH,OP2</p><p>  MOV DL,OP3</p><p><b>  INT 10H</b></p><p><b>  ENDM</b></p>

40、<p>  POS_GET MACRO ;顯示光標(biāo)位置</p><p>  MOV AH,03H</p><p><b>  MOV BH,0</b></p><p><b>  INT 10H</b></p><p><b&

41、gt;  ENDM</b></p><p>  DATA SEGMENT ;定義數(shù)據(jù)段</p><p>  MENU DB 'FILE EDIT HELP $'</p><p>  MASS_1 DB 'F1 ACTIVE FILE F10 AC

42、TIVE HELP','$'</p><p>  MANU_1 DB ' NEW ',13,10,'$'</p><p>  MANU_2 DB ' OPEN ',13,10,'$'</p><p>  MANU_3 DB ' SAVE

43、 ',13,10,'$'</p><p>  MANU_4 DB ' SAVE AS ',13,10,'$'</p><p>  MANU_5 DB ' EXIT ','$'</p><p>  HANDLE DW ?</p><p&g

44、t;  MESSAGE1 DB ' PLEASE INPUT FILE NAME:','$'</p><p>  MESSAGE2 DB ' PLEASE INPUT SAVE FILE NAME:','$'</p><p>  MESSAGE3 DB ' PLEASE INPUT OPEN FILE NAME:

45、9;,'$'</p><p>  MESSAGE4 DB ' ***THE FILE IS NOT SAVE! SAVE IT NOW? (Y/N)***: ','$'</p><p>  PATH DB 50 DUP(0),'$'</p><p>  BUFFER DB 2000 DUP(

46、?)</p><p>  BAK DB 3850 DUP(0)</p><p>  LINE DB ?</p><p>  ROW DB ?</p><p>  CHAR DB ?</p><p>  HELP_MAS1 DB ' WELCOME USE EDITOR! $&

47、#39; ;幫助內(nèi)容</p><p>  HELP_MAS2 DB 'PLEASE THE FIRST ACTIVE HELP! $'</p><p>  HELP_MAS3 DB 'GOOD LUCKY!! $'</p><p>  HELP_MAS4 DB '==========================

48、================================$'</p><p>  HELP_MAS5 DB 'PRESS F1 TO ACTIVE FILE. $'</p><p>  HELP_MAS6 DB 'YOU CAN USE DOWN CURSOR KEY TO CHOOSE THE FUCTION $'</p>&

49、lt;p>  HELP_MAS7 DB 'PRESS F10 TO SHOW THE HELP MASSAGE.PRESS ESC TO QUIT$'</p><p>  DATE DB 'TODAY ??/??/','$'       ;調(diào)用日期</p><p>  HANGLIE DB '???//???&

50、#39;,'$'        ;行//列</p><p>  DATA ENDS</p><p>  CODE SEGMENT </p><p>  MAIN PROC FAR ;主程序</p>&

51、lt;p>  ASSUME CS:CODE,DS:DATA</p><p><b>  START:</b></p><p><b>  PUSH DS</b></p><p>  SUB AX,AX</p><p><b>  PUSH AX</b></p>

52、;<p>  MOV AX,DATA</p><p>  MOV DS,AX</p><p>  CALL WIND                </p><p>  CALL EDIT </p><p><b>  RET</b></

53、p><p>  MAIN ENDP</p><p>  WIND PROC NEAR ;創(chuàng)建窗口子程序</p><p>  WIN 0,3EH,1,0,24,79 ;定義窗口背景</p><p>  WIN 1,1FH,0

54、,0,0,79</p><p>  WIN 0,1FH,24,0,24,79</p><p>  SHOW: POS_CURSE 0,0,1 ;顯示菜單位置及內(nèi)容 </p><p><b>  MOV AH,9</b></p><p>  LEA DX,MENU</p

55、><p><b>  INT 21H</b></p><p>  SHOW_2: POS_CURSE 0,24,1  ;顯示狀態(tài)欄位置及內(nèi)容</p><p><b>  MOV AH,9</b></p><p>  LEA DX,MASS_1</p>

56、<p><b>  INT 21H</b></p><p><b>  CALL WIN3</b></p><p><b>  CALL WIN4</b></p><p>  POS_CURSE 0,1,0</p><p>  MOV ROW,DH</p>

57、;<p>  MOV LINE,DL</p><p><b>  WIND ENDP</b></p><p>  EDIT PROC NEAR</p><p>  CHAR_GET: CALL COM ;讀字符</p><p>  COM PROC NEA

58、R ;定義功能鍵</p><p><b>  POS_GET</b></p><p>  MOV ROW,DH</p><p>  MOV LINE,DL</p><p>  FIRST: POS_CURSE 0,ROW,LINE</p><p&g

59、t;  J00: MOV AH,0</p><p>  INT 16H ;從鍵盤讀字符 AH=掃描碼 AL=字符碼</p><p><b>  PUSH AX</b></p><p>  LEA DX,BUFFER</p><p>  MOV BUFFER[BX],AL&l

60、t;/p><p><b>  INC BX</b></p><p>  CMP AH,48H ;上</p><p><b>  JZ UP_1</b></p><p>  CMP AH,50H ;下</p>

61、<p>  JZ DOWN_1</p><p>  CMP AH,4BH ;左</p><p><b>  JZ LEFT</b></p><p>  CMP AH,4DH ;右</p><p>  JZ RIGHT&

62、lt;/p><p>  CMP AH,1CH ;回車</p><p>  JZ ENTER_1</p><p>  CALL FUC_KEY</p><p><b>  MOV AH,2</b></p><p><b>  MOV DL,AL<

63、;/b></p><p><b>  INT 21H</b></p><p><b>  POP AX</b></p><p>  CALL MENU_SHOW</p><p><b>  JMP J6</b></p><p>  DOWN_

64、1: JMP DOWN</p><p>  ENTER_1: JMP ENTER_2</p><p>  UP_1: JMP UP</p><p>  LEFT: POS_GET ;光標(biāo)左移</p><p>  MOV

65、 ROW,DH</p><p>  MOV DL,LINE</p><p>  CMP LINE,0</p><p>  JNZ DIRECT</p><p>  MOV LINE,79</p><p><b>  DEC ROW</b></p><p><b>

66、  CMP ROW,0</b></p><p>  JE STOP2 </p><p><b>  JMP FIRST</b></p><p>  STOP2: MOV ROW,1</p><p><b>  JMP FIRST</b></p><

67、;p>  DIRECT: DEC LINE</p><p>  CALL WIN4 ;顯示光標(biāo)位置</p><p><b>  JMP FIRST</b></p><p>  RIGHT: POS_GET ;光標(biāo)右移

68、</p><p>  MOV ROW,DH</p><p>  MOV DL,LINE</p><p>  CMP LINE,79</p><p>  JNZ DIRECT2</p><p>  MOV LINE,0</p><p><b>  INC ROW</b><

69、;/p><p>  CMP ROW,24</p><p>  JE RETURNS1 </p><p><b>  JMP FIRST</b></p><p>  DIRECT2: INC LINE</p><p><b>  CALL WIN4</b>

70、;</p><p><b>  JMP FIRST</b></p><p>  ENTER_2: JMP ENTER</p><p>  UP: ;上移光標(biāo)</p><p><b>  POS_GET<

71、/b></p><p>  MOV ROW,DH</p><p>  MOV DL,LINE</p><p><b>  DEC ROW</b></p><p><b>  CMP ROW,0</b></p><p><b>  JE STOP1</b

72、></p><p><b>  CALL WIN4</b></p><p><b>  JMP FIRST</b></p><p>  STOP1: MOV ROW,1</p><p><b>  JMP FIRST</b></p>&l

73、t;p>  DOWN: ;下移光標(biāo)</p><p><b>  POS_GET</b></p><p>  MOV ROW,DH</p><p>  MOV DL,LINE </p><p><b>  INC ROW<

74、;/b></p><p>  CMP ROW,24</p><p><b>  JE STOP3</b></p><p><b>  CALL WIN4</b></p><p><b>  JMP FIRST</b></p><p>  STOP

75、3: MOV ROW,23</p><p><b>  JMP FIRST</b></p><p>  RETURNS1: JMP RETURNS</p><p>  ENTER: ;回車換行</p><p>

76、;<b>  POS_GET</b></p><p>  MOV ROW,DH</p><p>  MOV LINE,DL</p><p><b>  INC ROW</b></p><p>  CMP ROW,24</p><p>  JE RETURNS</p&g

77、t;<p>  MOV LINE,0</p><p><b>  CALL WIN4</b></p><p><b>  JMP FIRST</b></p><p>  RETURNS: MOV ROW,24</p><p>  MOV LINE,0</p>

78、<p><b>  JMP FIRST</b></p><p>  J6: RET</p><p>  COM ENDP</p><p>  FUC_KEY PROC NEAR ;功能鍵子程序 </p><p>  NEXT: CM

79、P AH,47H ;HOME</p><p><b>  JZ HOME</b></p><p>  CMP AH,4FH ;END</p><p><b>  JZ _END</b></p><p>  CMP AH,

80、0EH ;BACKSPACE</p><p>  JZ BAK_SP</p><p>  CMP AH,53H</p><p><b>  JZ DEL</b></p><p>  CMP AH,44H ;F10</p><

81、;p>  JZ HELP_0</p><p><b>  RET</b></p><p>  HELP_0: CALL HELP</p><p>  HOME: POS_GET ;HOME鍵的功能</p><p>  MOV RO

82、W,DH</p><p>  MOV LINE,0</p><p><b>  CALL WIN4</b></p><p>  JMP FIRST </p><p>  END: ;END鍵的功能</p><p&g

83、t;<b>  POS_GET</b></p><p>  MOV ROW,DH</p><p>  MOV LINE,79</p><p><b>  CALL WIN4</b></p><p>  JMP FIRST </p><p>  BAK_SP:

84、 ;退格鍵的功能</p><p><b>  POS_GET</b></p><p>  MOV ROW,DH</p><p>  MOV LINE,DL</p><p>  CMP LINE,0</p><p><b> 

85、 JE STOP</b></p><p><b>  DEC LINE</b></p><p><b>  JMP AB</b></p><p><b>  STOP: </b></p><p>  MOV LINE,0</p><p>&

86、lt;b>  AB: </b></p><p>  POS_GET 0,ROW,LINE</p><p><b>  MOV AH,2</b></p><p><b>  MOV DL,00</b></p><p><b>  INT 21H</b>&l

87、t;/p><p><b>  CALL WIN4</b></p><p><b>  JMP FIRST</b></p><p>  DEL: ;DEL刪除</p><p><b>  POS_GET&l

88、t;/b></p><p>  MOV ROW,DH</p><p>  MOV LINE,DL</p><p><b>  DEC LINE</b></p><p>  POS_GET 0,ROW,LINE</p><p><b>  MOV AH,2</b><

89、/p><p><b>  MOV DL,00</b></p><p><b>  INT 21H</b></p><p><b>  INC LINE</b></p><p><b>  CALL WIN4</b></p><p>&l

90、t;b>  JMP FIRST</b></p><p><b>  CM: </b></p><p>  CMP LINE,00</p><p>  JZ POS_CM</p><p>  POS_CM: POS_CURSE 0,0,0</p><p>

91、;<b>  JMP FIRST</b></p><p>  HELP PROC NEAR ;顯示幫助信息</p><p>  CALL SAVEDISPLAY ;顯示幫助信息每行的位置</p><p><b>  POS_GET</b></p><p&

92、gt;<b>  PUSH DX</b></p><p>  WIN 0,57H,4,5,21,70</p><p>  POS_CURSE 0,6,25</p><p>  STRING HELP_MAS1</p><p>  POS_CURSE 0,8,11</p><p>  STRING

93、HELP_MAS2</p><p>  POS_CURSE 0,10,11</p><p>  STRING HELP_MAS3</p><p>  POS_CURSE 0,12,11</p><p>  STRING HELP_MAS4</p><p>  POS_CURSE 0,14,11</p>&

94、lt;p>  STRING HELP_MAS5</p><p>  POS_CURSE 0,16,11</p><p>  STRING HELP_MAS6</p><p>  POS_CURSE 0,18,11</p><p>  STRING HELP_MAS7</p><p><b>  POP

95、DX</b></p><p>  POS_CURSE 0,DH,DL</p><p><b>  MOV AH,0</b></p><p><b>  INT 16H</b></p><p>  CMP AH,36H ;F10 ACTIVE HELP

96、</p><p><b>  JNZ CLS</b></p><p><b>  CALL HELP</b></p><p><b>  CLS: </b></p><p>  WIN 0,1EH,9,10,13,70 ;清屏</p>

97、<p>  CALL BACKDISPLAY</p><p><b>  HELP ENDP</b></p><p>  FUC_KEY ENDP</p><p>  MENU_SHOW PROC NEAR ;顯示菜單</p><p>  CALL SAVEDISPLAY</p><

98、;p><b>  PUSH CX</b></p><p>  CMP AH,3BH ;F1功能</p><p>  JZ MENU_SH</p><p>  JMP CHAR_GET</p><p>  MENU_SH: ;定義菜單的背景

99、字體顏色</p><p><b>  POS_GET</b></p><p><b>  PUSH DX</b></p><p>  WIN 0,06H,2,1,7,11</p><p>  WIN 0,65H,1,0,6,10</p><p>  POS_CURSE 0,1

100、,0</p><p>  STRING MANU_1</p><p>  STRING MANU_2</p><p>  STRING MANU_3</p><p>  STRING MANU_4</p><p>  STRING MANU_5</p><p><b>  POP DX

101、</b></p><p><b>  DEC DL</b></p><p>  POS_CURSE 0,DH,DL</p><p>  COPMAR: </p><p><b>  RED_CHR</b></p><p>  CMP AH,50H

102、 </p><p>  JZ MANU_N</p><p>  JMP MANU_HID</p><p>  MANU_HID: ;菜單隱藏</p><p>  WIN 0,1EH,1,1,7,11</p><p>  C

103、ALL BACKDISPLAY</p><p>  JMP CHAR_GET</p><p>  MANU_N: ;開始定義各個(gè)菜單項(xiàng)</p><p>  WIN 0,65H,5,1,5,8</p><p>  POS_CURSE 0,5,0</p&g

104、t;<p>  STRING MANU_5</p><p>  WIN 0,15H,1,1,1,8</p><p>  POS_CURSE 0,1,0</p><p>  STRING MANU_1</p><p><b>  RED_CHR</b></p><p>  CMP AH

105、,48H</p><p>  JE MANU_N</p><p>  CMP AL,0DH</p><p><b>  JZ NEW_1</b></p><p>  CMP AH,50H</p><p>  JE MANU_O</p><p>  JMP MANU_H

106、ID</p><p>  MANU_N0: JMP MANU_N</p><p><b>  MANU_O:</b></p><p>  WIN 0,65H,1,1,1,8</p><p>  POS_CURSE 0,1,0</p><p>  STRING MANU_1&l

107、t;/p><p>  WIN 0,15H,2,1,2,8</p><p>  POS_CURSE 0,2,0</p><p>  STRING MANU_2</p><p><b>  RED_CHR</b></p><p>  CMP AH,48H</p><p>  JE

108、 MANU_O</p><p>  CMP AL,0DH</p><p><b>  JZ OPEN_1</b></p><p>  CMP AH,50H</p><p>  JE MANU_S</p><p>  JMP MANU_HID</p><p>  NEW_1

109、: JMP NEW_2</p><p><b>  MANU_S:</b></p><p>  WIN 0,65H,2,1,2,8</p><p>  POS_CURSE 0,2,0</p><p>  STRING MANU_2</p><p>  WIN 0,15H,3,1

110、,3,8</p><p>  POS_CURSE 0,3,0</p><p>  STRING MANU_3</p><p><b>  RED_CHR</b></p><p>  CMP AL,0DH</p><p>  JZ SAVE_1</p><p>  CMP

111、AH,48H</p><p>  JE MANU_S</p><p>  CMP AH,50H</p><p>  JE MANU_A</p><p>  JMP MANU_HID</p><p>  OPEN_1: JMP OPEN_2</p><p>  MAN

112、U_N1: JMP MANU_N</p><p><b>  MANU_A:</b></p><p>  WIN 0,65H,3,1,3,8</p><p>  POS_CURSE 0,3,0</p><p>  STRING MANU_3</p><p>  WIN 0,1

113、5H,4,1,4,8</p><p>  POS_CURSE 0,4,0</p><p>  STRING MANU_4</p><p><b>  RED_CHR</b></p><p>  CMP AH,1CH</p><p>  JZ SAVE_2</p><p>

114、  CMP AH,48H</p><p>  JE MANU_A</p><p>  CMP AH,50H</p><p>  JE MANU_E</p><p>  JMP MANU_HID</p><p>  MANU_N2: JMP MANU_N1</p><p>

115、;  NEW_2: JMP NEW</p><p>  SAVE_1: CALL SAVE</p><p>  SAVE_2: CALL SAVEAS</p><p><b>  MANU_E:</b></p><p>  WIN 0,65H

116、,4,1,4,8</p><p>  POS_CURSE 0,4,0</p><p>  STRING MANU_4</p><p>  WIN 0,15H,5,1,5,8</p><p>  POS_CURSE 0,5,0</p><p>  STRING MANU_5</p><p><

117、;b>  RED_CHR</b></p><p>  CMP AH,50H</p><p>  JE MANU_N2</p><p>  CMP AH,48H</p><p>  JE MANU_E</p><p>  CMP AH,1CH</p><p><b>

118、;  JE EXIT</b></p><p>  JMP MANU_HID</p><p><b>  EXIT:</b></p><p>  CALL BACKDISPLAY</p><p>  WIN 0,07H,15,10,17,61</p><p>  WIN 0,24H,1

119、4,9,16,60</p><p><b>  MOV DH,15</b></p><p><b>  MOV DL,9</b></p><p><b>  MOV BH,0</b></p><p><b>  MOV AH,2</b></p>

120、<p><b>  INT 10H</b></p><p>  LEA DX,MESSAGE4</p><p>  MOV AH,9 </p><p><b>  INT 21H</b></p><p><b>  MOV AH,1</b></p&g

121、t;<p><b>  INT 21H</b></p><p>  CMP AL,79H </p><p><b>  JNZ Q</b></p><p>  CALL QUITT</p><p>  Q:

122、 CMP AL,6EH</p><p><b>  JZ QUIT</b></p><p>  QUIT: WIN 0,07H,0,0,24,79</p><p>  POS_CURSE 0,0,0</p><p>  MOV AH,4CH</p><p&g

123、t;<b>  INT 21H</b></p><p><b>  RET</b></p><p>  MENU_SHOW ENDP</p><p>  NEW PROC NEAR ;新建文件</p><p><b>  POS_GET<

124、/b></p><p><b>  PUSH DX</b></p><p>  CALL BACKDISPLAY</p><p>  WIN 0,07H,15,10,17,61</p><p>  WIN 0,24H,14,9,16,60,</p><p><b>  MOV DH

125、,15</b></p><p><b>  MOV DL,9</b></p><p><b>  MOV BH,0</b></p><p><b>  MOV AH,2</b></p><p><b>  INT 10H</b></p&g

126、t;<p>  LEA DX,MESSAGE1</p><p>  CMP AL,0DH</p><p><b>  MOV AH,9</b></p><p><b>  INT 21H</b></p><p><b>  MOV BX,0</b></p&g

127、t;<p><b>  ALL:</b></p><p><b>  MOV AH,1</b></p><p><b>  INT 21H</b></p><p>  CMP AL,0DH</p><p><b>  JE ALLL</b>

128、</p><p>  MOV PATH[BX],AL</p><p><b>  INC BX</b></p><p><b>  JMP ALL</b></p><p><b>  ALLL:</b></p><p>  WIN 0,3EH,15,9,

129、17,61</p><p><b>  POP DX</b></p><p>  POS_CURSE 0,DH,DL</p><p>  LEA DX,PATH</p><p>  MOV AH,3CH</p><p><b>  MOV CX,00</b></p>

130、;<p><b>  INT 21H</b></p><p>  MOV HANDLE,AX</p><p><b>  MOV BX,AX</b></p><p>  MOV AH,3EH</p><p><b>  INT 21H</b></p>

131、<p>  WIN 0,3EH,1,0,23,79</p><p><b>  MOV DH,1</b></p><p><b>  MOV DL,0</b></p><p><b>  MOV BH,0</b></p><p><b>  MOV AH,

132、2</b></p><p><b>  INT 10H</b></p><p>  JMP CHAR_GET</p><p>  NEW ENDP</p><p>  OPEN_2: JMP OPEN</p><p>  SAVEAS PROC NE

133、AR ;另存為文件 </p><p>  WIN 0,3EH,1,0,6,10</p><p>  CALL BACKDISPLAY</p><p>  WIN 0,07H,15,10,17,61</p><p>  WIN 0,24H,14,9,16,60,</p><p><b>  

134、MOV DH,15</b></p><p><b>  MOV DL,9</b></p><p><b>  MOV BH,0</b></p><p><b>  MOV AH,2</b></p><p><b>  INT 10H</b>&l

135、t;/p><p>  LEA DX,MESSAGE2</p><p><b>  MOV AH,9</b></p><p><b>  INT 21H</b></p><p><b>  MOV BX,0</b></p><p><b>  BLL

136、:</b></p><p><b>  MOV AH,1</b></p><p><b>  INT 21H</b></p><p>  CMP AL,0DH</p><p><b>  JE BLLL</b></p><p>  MOV P

137、ATH[BX],AL</p><p><b>  INC BX</b></p><p><b>  JMP BLL</b></p><p><b>  BLLL:</b></p><p><b>  POS_GET</b></p><p

138、><b>  PUSH DX</b></p><p>  WIN 0,3EH,1,0,23,79</p><p>  CALL BACKDISPLAY</p><p><b>  POP DX</b></p><p>  POS_CURSE 0,DH,DL</p><p&g

139、t;  LEA DX,PATH</p><p>  MOV AH,3CH</p><p><b>  MOV CX,00</b></p><p><b>  INT 21H</b></p><p>  MOV HANDLE,AX</p><p>  LEA DX,BUFFER

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論