歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

《微機原理與接口技術(shù)》課程設計說明書時鐘系統(tǒng)匯編語言程序設計

  • 資源ID:28022069       資源大?。?span id="p0ltlyq" class="font-tahoma">102.04KB        全文頁數(shù):14頁
  • 資源格式: DOC        下載積分:15積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要15積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標題沒有明確說明有答案則都視為沒有答案,請知曉。

《微機原理與接口技術(shù)》課程設計說明書時鐘系統(tǒng)匯編語言程序設計

武漢理工大學微機原理與接口技術(shù)課程設計說明書目錄摘要21 總體方案設計31.1設計目的31.2設計任務與要求31.3設計方案32 程序流程圖設計42.1主流程圖設計42.2子流程圖設計43 程序段落的說明63.1光標的設立和隱藏63.2調(diào)用系統(tǒng)的時間63.3 判斷是否有鍵盤輸入74 程序調(diào)試說明、結(jié)果記錄與分析84.1 程序調(diào)試過程84.2調(diào)試結(jié)果84.3分析結(jié)果95課程設計收獲與心得體會10參考文獻11附錄12摘要微型計算機簡稱微機,由于其具備人腦的某些功能,所以也稱其為微電腦。是由大規(guī)模集成電路組成的、體積較小的電子計算機。它是以微處理器為基礎(chǔ),配以內(nèi)存儲器及輸入輸出接口電路和相應的輔助電路而構(gòu)成的裸機。把微型計算機集成在一個芯片上即構(gòu)成單片微型計算機。學習微機課程,主要內(nèi)容包括微型計算機體系結(jié)構(gòu)、8086微處理器和指令系統(tǒng)、匯編語言、設計以及微型計算機各個組成部分,而匯編語言是其中一大板塊。匯編語言是面向機器的程序設計語言。在匯編語言中,用助記符代替操作碼,用地址符號或標號代替地址碼,匯編語言是一種功能很強的程序設計語言,也是利用計算機所有硬件特性并能直接控制硬件的語言。匯編語言像機器指令一樣,是硬件操作的控制信息,使用起來比較繁瑣費時,通用性也差,但是,匯編語言用來編制系統(tǒng)軟件和過程控制軟件,其目標程序占用內(nèi)存空間少,運行速度快,有著高級語言不可替代的用途。關(guān)鍵字: 微機 指令 匯編語言 程序時鐘系統(tǒng)匯編語言程序設計1 總體方案設計1.1設計目的1)進一步建立微機系統(tǒng)的概念,加深對系統(tǒng)的理解和認識,培養(yǎng)學生應用微型計算機解決實際問題的能力;2)進一步學習和掌握匯編語言程序的編寫和應用的方法,通過較大規(guī)模程序的編寫,提高編寫匯編語言程序的水平和學習程序調(diào)試方法。3)進一步熟悉微機最小系統(tǒng)的構(gòu)成及常用接口芯片的使用,提高系統(tǒng)設計的能力。 1.2設計任務與要求 課程設計任務:系統(tǒng)時鐘匯編語言程序設計設計初始條件:1)采用16位微處理器 8086 CPU以及86系列微型計算機的指令系統(tǒng);2)軟件設計平臺為多功能微型計算機實驗軟件MFS中的微機原理實驗集成環(huán)境MF2KP。課程設計要求:1)設計一個計時器界面,形式為:時:分:秒;2)單擊”ESC”鍵退出程序。根據(jù)功能要求繪制程序流程圖、編寫完整的匯編語言程序并上機調(diào)試1.3設計方案 本次設計中,要實現(xiàn)時間的顯示,并在此基礎(chǔ)上附加上一個功能,在時間顯示后,單機“ESC”鍵時,退出顯示界面。在本次設計中,可以加入一個功能,當單擊其他鍵時,顯示界面并不退出,即界面不變,沒有反應,再單擊“ESC”鍵時,退出顯示界面。 在設計時,時鐘的實現(xiàn)有很多方法,可以采用DOS系統(tǒng)功能調(diào)用語句INT 21h直接調(diào)用系統(tǒng)時間,再在著基礎(chǔ)上加上推出的功能;也可以采用延時的方法,設計一個延時器,每隔一秒,計數(shù)器加一,采用六十進制。在此基礎(chǔ)上再加上附加功能。在本次課程設計中,采用調(diào)用系統(tǒng)時間的方法,方法比較簡單明了,功能實現(xiàn)比較好,能和系統(tǒng)時間跳動保持一致,故選用此種方法。2 程序流程圖設計2.1主流程圖設計 由方案設計分析可知,此次設計比較簡單,先初始化程序,然后設立光標,在光標移動時,不斷地取時,取分,取秒,并不斷的循環(huán)。在循環(huán)的過程中,當按下ESC鍵時退出程序;當按下其它鍵時,程序繼續(xù)運行,并顯示時間界面,再按下ESC鍵時,程序又將退出。流程圖設計:當初始化后,設定一個光標用來顯示時間的時、分、秒,并將光標隱藏。流程圖有兩個分支,表示有兩個判斷,當時分秒取完后,判斷是否在鍵盤上有輸入,如果沒有輸入,則返回到光標定位,若有輸入判斷是否為ESC鍵的ASC碼,如果是則退出程序,程序結(jié)束,過程比較明了,流程圖分支不多,但功能能夠很好的實現(xiàn)。流程圖如1所示。2.2子流程圖設計 可知,在時間的獲取時,需要時、分、秒分別獲取,顯示時使用的是相應的ASCII碼。加上分隔符“:”,共同組成完整時鐘顯示,我們對子程序做流程圖,如圖2所示。 開 始結(jié) 束輸入為ESC嗎?鍵盤有輸入嗎?顯 示 秒 鐘顯 示 分 鐘獲取時間,顯示時初 始 化設 立 光 標 秒的獲取,將儲存的數(shù)值轉(zhuǎn)換成相應的ASCII碼顯示在屏幕上分的獲取,將分的數(shù)值轉(zhuǎn)換成相應的ASCII碼時的顯示,將儲存的數(shù)值轉(zhuǎn)換成相應的ASCII碼,顯示在光標位置上系統(tǒng)時間調(diào)用:mov ah,02 int 1ah CX,DX進出棧使用實現(xiàn)時分秒的顯示開 始結(jié) 束 N Y NY圖1 主程序設計流程圖 圖2 子程序流程圖 3 程序段落的說明3.1光標的設立和隱藏 光標的不停移動,使時間能不停地顯示時間的時分秒,并使其顯示界面不消失,并隨著系統(tǒng)時間的變化而同步變化,隱藏光標使界面看起來更美觀。程序如下: mov dh,0ah ;行數(shù) mov dl,35 ;列數(shù) mov bh,0 ;頁數(shù) mov ah,2 int 10h ;確定光標的位置,使其居在中間 mov cx,2000h mov ah,01h int 10h ;隱藏光標3.2調(diào)用系統(tǒng)的時間 獲取系統(tǒng)的時間,用程序?qū)⑾到y(tǒng)的時間調(diào)用,使顯示的時間和系統(tǒng)的時間同步變化,其中時間的時分秒顯示都是需要先轉(zhuǎn)換成相應的ASCII碼,再顯示在屏幕上。獲取系統(tǒng)時間:mov ah,02 int 1ah ;系統(tǒng)時間調(diào)用 push cx push dx ;現(xiàn)場保護 時的獲?。?xor dl,dl ;dl清零 mov dl,ch ;cx高四位給dl mov cl,4 shr dl,cl ;最終dl中為ch的高四位 add dl,30h ;轉(zhuǎn)換成ASCII碼 mov ah,02h int 21h ;光標處顯示時的第一位 mov dl,ch add dl,0fh add dl,30h ;轉(zhuǎn)換成ASCII碼 mov ah, 02 int 21h ;光標處顯示時的第二位 mov dl,":" mov ah,02 int 21h ;光標處顯示“:”分的獲?。?pop dx pop cx ;出棧,恢復現(xiàn)場 push dx ;置光標位置 xor dl,dl mov dl,cl mov dh,cl mov cl,4 shr dl,cl add dl,30h ;轉(zhuǎn)化成相應的ASCII碼 mov ah,02 int 21h ;光標處顯示分的第一位 mov cl,dh and cl,0fh add cl,30h ;轉(zhuǎn)化成相應的ASCII碼 mov dl,cl mov ah,02 int 21h ;光標處顯示分的第二位 mov dl,: mov ah,02 int 21h ;光標處顯示“:”秒的獲?。?pop dx ;出棧,恢復現(xiàn)場 mov bl,dh mov cl,4 shr dh,cl add dh,30h ;轉(zhuǎn)化成相應的ASCII碼 mov dl,dh mov ah,02 int 21h ;光標處顯示秒的第一位 mov cl,bl and cl,0fh add cl,30h ;轉(zhuǎn)化成相應的ASCII碼 mov dl,cl mov ah,02 int 21h ;光標處顯示秒的第二位 3.3 判斷是否有鍵盤輸入 判斷是否有輸入,當有字符時判斷是否為ESC,若是則退出程序,如果不是程序繼續(xù)運行。程序段:a1: mov ah,0bh ;調(diào)用DOS 功能0BH 檢測鍵盤是否有輸入 int 21h cmp al,00h ;檢測是否有輸入 jne a2 ;有則跳到a2 jmp go ;沒有則回到goa2: mov ah, 08h int 21h cmp al,1bh ;判斷是否為ESC je exit ;是則退出 jmp go ;不是則跳到goexit:mov ah,4ch int 21h ;退出程序4 程序調(diào)試說明、結(jié)果記錄與分析4.1 程序調(diào)試過程 程序調(diào)試,是將編制的程序投入實際運行前,用手工或編譯程序等方法進行測試,修正語法錯誤和邏輯錯誤的過程。這是保證計算機信息系統(tǒng)正確性的必不可少的步驟。編完計算機程序,得調(diào)試所寫程序是否正確,是否能滿足所要求的功能。 寫好程序后,對DOS系統(tǒng)界面調(diào)用功能指令不太熟悉,界面出來后時間顯示在右上角,并且光標不能消失,最后經(jīng)過查詢,運用了10號中斷,最后把光標隱藏了,并使時間顯示在界面的中間位置。在判斷是否在鍵盤上有輸入時,開始不會用鍵盤掃描功能,沒有調(diào)試出來,經(jīng)過向同學請教最后調(diào)用DOS功能0bh,并用08h來判斷是否是ESC輸入,最終實現(xiàn)了退出功能。4.2調(diào)試結(jié)果運行程序,時間顯示界面,如圖3所示: 圖3 進入后的運行界面 單擊其他鍵時的顯示界面,如圖4所示,與圖3相同。單擊ESC鍵時,界面消失,退出程序。 圖4 單擊其它鍵時的顯示界面4.3分析結(jié)果 可知運行程序后,能達到設計要求,即進入后能顯示時間在屏幕的中央位置,單擊ESC外的鍵時,程序繼續(xù),時間繼續(xù)顯示,單擊ESC時,退出程序,程序設計成功。5課程設計收獲與心得體會 首先,經(jīng)過了一個學期的微機原理與接口技術(shù)的學習,但是除了實驗外并沒有多少實際設計的機會,課程設計與理論課程和實驗有著很大的區(qū)別,它是一個綜合性很強的課程環(huán)節(jié),也是我們所必須經(jīng)歷的一個學習階段。在課程設計中,我們在學會學會理論知識的同時,還會加深自己對這門課程的理解,在這門課程設計當中,我們能學到一些軟件的運用,結(jié)合一些其他課程,如MF2KI,即匯編語言程序軟件,通過互相結(jié)合,相互滲透,來得到我們所需的數(shù)據(jù)、結(jié)論以及使我們掌握更多的知識。 其次,通過這次課程設計的實際操作,我加深了對微機原理與接口技術(shù)課程理論知識的理解和認識,同時初步掌握了課程設計的方法和步驟。學會了把微機課程中學到的理論知識實際運用,在實踐中體會。同時通過編程,加強了我對MF2KI軟件的掌握程度,學會了通過用MF2KI的編程來解決一些跨專業(yè)的,綜合性的問題??傊?,在此次課程設計中,很多東西以前都沒有接觸到,現(xiàn)在經(jīng)過課設,通過查閱資料,我拓寬了自己的知識面,在課設中學會了獨立思考和鍛煉了自己的實踐動手能力??偟膩碚f,這次課程設計使我受益匪淺。參考文獻1 彭虎等編著微機原理與接口技術(shù)(第二版)北京:電子工業(yè)出版社,20082 錢曉捷著.匯編語言程序設計學習與解題指南.武漢:華中科技大學出版社,2002 3 黃明,粱旭,常征著.匯編語言程序設計習題詳解.北京:機械工業(yè)出版社,2004 4 馬力妮80x86匯編語言程序設計北京:機械工業(yè)出版社,20045 程學先,徐東平著.匯編語言程序設計.武漢:武漢理工大學出版社,20036 艾德才Pentium系列微型計算機原理與接口技術(shù)北京:高等教育出版社,2000附錄datas segment datas endsstacks segment ;此處輸入堆棧段代碼stacks endscodes segment assume cs:codes,ds:datas,ss:stacksstart: mov ax,datas mov ds,ax go: mov dh,0ah ;行數(shù) mov dl,35 ;列數(shù) mov bh,0 ;頁數(shù) mov ah,2 int 10h ;確定光標的位置,使其居在中間 mov cx,2000h mov ah,01h int 10h ;隱藏光標 xor dl,dl ;dl清零 mov dl,ch ;cx高四位給dl mov cl,4 shr dl,cl ;最終dl中為ch的高四位 add dl,30h ;轉(zhuǎn)換成ASCII碼 mov ah,02h int 21h ;光標處顯示時的第一位 mov dl,ch add dl,0fh add dl,30h ;轉(zhuǎn)換成ASCII碼 mov ah, 02 int 21h ;光標處顯示時的第二位 mov dl,":" mov ah,02 int 21h ;光標處顯示“:” pop dx pop cx ;出棧,恢復現(xiàn)場 push dx ;置光標位置 xor dl,dl mov dl,cl mov dh,cl mov cl,4 shr dl,cl add dl,30h ;轉(zhuǎn)化成相應的ASCII碼 mov ah,02 int 21h ;光標處顯示分的第一位 mov cl,dh and cl,0fh add cl,30h ;轉(zhuǎn)化成相應的ASCII碼 mov dl,cl mov ah,02 int 21h ;光標處顯示分的第二位 mov dl,: mov ah,02 int 21h ;光標處顯示“:” pop dx ;出棧,恢復現(xiàn)場 mov bl,dh mov cl,4 shr dh,cl add dh,30h ;轉(zhuǎn)化成相應的ASCII碼 mov dl,dh mov ah,02 int 21h ;光標處顯示秒的第一位 mov cl,bl and cl,0fh add cl,30h ;轉(zhuǎn)化成相應的ASCII碼 mov dl,cl mov ah,02 int 21h ;光標處顯示秒的第二位 a1: mov ah,0bh ;調(diào)用dos 功能0bh 檢測鍵盤是否有輸入 int 21h cmp al,00h jne a2 ;如果有輸入,則跳轉(zhuǎn)到a2 jmp go ;如果沒有輸入,則跳轉(zhuǎn)到goa2: mov ah, 08h int 21h ;調(diào)用dos 功能08h 判斷鍵盤輸入的字母 cmp al,1bh ;判斷鍵盤輸入是否為esc je exit ;如果是則跳轉(zhuǎn)到exit jmp go ;重新跳回開頭exit: mov ah,4ch ;結(jié)束dos以及跳出語句 int 21hcodes ends end startut2ApOdfXXc02GyBKsKCWw97MrqqWhoj5TL15Zt6jIPYytYCummtARp3v1N5luizi3xh3BhWYreKO8d9g7nmZQoWPJeTLDrw08gVS8DsDQQYGC3cE7moO2tLF0Jf1gK74IUXyBmtIVR97CkrfVqULT5fn2t6MpJR6rbzVPSortZvIj5NB5ndVvSr4iWr1TwLFKgLSPzuhRjQ3CmZU98eUOuijdLSZqPmvrw9zKupxf8WFUG9l2G9277g2rTipa1YpCZEuqxpKBhtVDCooQOzxUz3vJrZmOcijyM62zchmeooTYes8EBMm932tbz2Yo09RtsZEYS8Zrd2Yktj8l6jEAzVAjnfbtryLvsm6oFbfToXVRFFn7OwIYgJlamkUNXJYbz5Rrb7r4VsuR9zpfZFMfsjhcfCA37lNW2VVLRKN7R8psz1BN6oRic5hU5Z6HCxAYqyNPOG8duYbAwqSl20CSg06Dh2sM8HLtgPkIcSkrgOPDpuHBj1LmPk7lYdvC6NNMwL3fwhZFTFVYAARY7lHSSxJ10V3pH3Y19BxYR77Ib7CpZSu2tijqe3hKqkKAu9KSkCpHKXUIKvvyJZpg2YijRkqfbGgOvyqKuxNWI9oMnJtt6QilZxtyrF7d20FbmabcfiixrQKUsVNXBPPFUXyQ1fJSKFSUbkgs2DUVQC9sz4JkbgN4Qqv66pyoARjurNFJ3TxyfclZiEePtwFJthphEipDFNqnR2HjQKV2DzWtMPDJQkBcXmovdsjqCTJagjMdLsKPgaD2s0H0vmZGAHt36gyUEZ7UmANk1ndREuBeqdgrx0venqGnsyIB2ilq3SIQrNL4m56t7Z8Y8da5K0KUpn5Nzg4JvjdtfFHyt82AoGQkXo4VBLmLEiy2P7HtHBho07rCfttxodYDPPdtQsO7wxD0J6fKKlGm4woDzplhtRr2XgqN13hqy59zU1GegDyQniHNTaVSieueFQcYfUCJwd3vk5I7YKmhunDmIZ ut2ApOdfXXc02GyBKsKCWw97MrqqWhoj5TL15Zt6jIPYytYCummtARp3v1N5luizi3xh3BhWYreKO8d9g7nmZQoWPJeTLDrw08gVS8DsDQQYGC3cE7moO2tLF0Jf1gK74IUXyBmtIVR97CkrfVqULT5fn2t6MpJR6rbzVPSortZvIj5NB5ndVvSr4iWr1TwLFKgLSPzuhRjQ3CmZU98eUOuijdLSZqPmvrw9zKupxf8WFUG9l2G9277g2rTipa1YpCZEuqxpKBhtVDCooQOzxUz3vJrZmOcijyM62zchmeooTYes8EBMm932tbz2Yo09RtsZEYS8Zrd2Yktj8l6jEAzVAjnfbtryLvsm6oFbfToXVRFFn7OwIYgJlamkUNXJYbz5Rrb7r4VsuR9zpfZFMfsjhcfCA37lNW2VVLRKN7R8psz1BN6oRic5hU5Z6HCxAYqyNPOG8duYbAwqSl20CSg06Dh2sM8HLtgPkIcSkrgOPDpuHBj1LmPk7lYdvC6NNMwL3fwhZFTFVYAARY7lHSSxJ10V3pH3Y19BxYR77Ib7CpZSu2tijqe3hKqkKAu9KSkCpHKXUIKvvyJZpg2YijRkqfbGgOvyqKuxNWI9oMnJtt6QilZxtyrF7d20FbmabcfiixrQKUsVNXBPPFUXyQ1fJSKFSUbkgs2DUVQC9sz4JkbgN4Qqv66pyoARjurNFJ3TxyfclZiEePtwFJthphEipDFNqnR2HjQKV2DzWtMPDJQkBcXmovdsjqCTJagjMdLsKPgaD2s0H0vmZGAHt36gyUEZ7UmANk1ndREuBeqdgrx0venqGnsyIB2ilq3SIQrNL4m56t7Z8Y8da5K0KUpn5Nzg4JvjdtfFHyt82AoGQkXo4VBLmLEiy2P7HtHBho07rCfttxodYDPPdtQsO7wxD0J6fKKlGm4woDzplhtRr2XgqN13hqy59zU1GegDyQniHNTaVSieueFQcYfUCJwd3vk5I7YKmhunDmIZ14

注意事項

本文(《微機原理與接口技術(shù)》課程設計說明書時鐘系統(tǒng)匯編語言程序設計)為本站會員(仙***)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!