![微機課程設(shè)計_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/8c3a8a87-ef19-40ec-a5a6-8e3f4a0c60bd/8c3a8a87-ef19-40ec-a5a6-8e3f4a0c60bd1.gif)
![微機課程設(shè)計_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/8c3a8a87-ef19-40ec-a5a6-8e3f4a0c60bd/8c3a8a87-ef19-40ec-a5a6-8e3f4a0c60bd2.gif)
![微機課程設(shè)計_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/8c3a8a87-ef19-40ec-a5a6-8e3f4a0c60bd/8c3a8a87-ef19-40ec-a5a6-8e3f4a0c60bd3.gif)
![微機課程設(shè)計_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/8c3a8a87-ef19-40ec-a5a6-8e3f4a0c60bd/8c3a8a87-ef19-40ec-a5a6-8e3f4a0c60bd4.gif)
![微機課程設(shè)計_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/8c3a8a87-ef19-40ec-a5a6-8e3f4a0c60bd/8c3a8a87-ef19-40ec-a5a6-8e3f4a0c60bd5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 課 程 設(shè) 計 課程名稱 微機原理課程設(shè)計與實踐 題目名稱 計算器(1) 學生學院 自動化學院 專業(yè)班級 10級電氣(1)班 學 號_3110001249_ 學生姓名_孫發(fā)杰_指導(dǎo)教師 李傳芳 2012 年 11月 21日一、課程設(shè)計的內(nèi)容1在顯示器上顯示任意四位十六進制數(shù)2.將8個鍵按實驗室要求定義鍵值,按任意鍵在顯示器上顯示對應(yīng)鍵值,要求顯示值能夠左移。3.實現(xiàn):A)定義鍵盤按鍵,5個為數(shù)字鍵4、6、8、C、D,3個功能鍵:加號+,乘號×,等號;B)可進行三位16進制加法運算; C)可進行兩位16進制乘法運算。二、課程設(shè)計的要求與數(shù)據(jù)(1)鞏固和加深對微機原理課程內(nèi)容的認識和理
2、解,提高應(yīng)用水平。(2)掌握匯編語言程序的編制方法。(3)熟悉鍵盤控制和七段數(shù)碼管的使用三、課程設(shè)計應(yīng)完成的工作完成線路的接線,編寫三個程序并輸入電腦中,把程序加載到W86學習機當中,運行程序驗證結(jié)果。四、課程設(shè)計進程安排序號設(shè)計各階段內(nèi)容地點起止日期1了解鍵盤的工作原理,編寫顯示程序微機實驗室3月17日2定義鍵盤數(shù)字和顯示數(shù)字微機實驗室3月18日3設(shè)計十六進制減法和十進制乘法的計算器微機實驗室3月19、20日五、應(yīng)收集的資料及主要參考文獻1 許立鋅等編.微型計算機原理及應(yīng)用.北京:機械工業(yè)出版社,20032.許立梓等編微型計算機原理及應(yīng)用 -習題解答、實驗指導(dǎo)及課程設(shè)計.北京:機械工業(yè)出版社
3、,2003發(fā)出任務(wù)書日期: 年 月 日 指導(dǎo)教師簽名:計劃完成日期: 年 月 日 基層教學單位責任人簽章: 主管院長簽章:摘要 本實訓(xùn)報告主要關(guān)于本次任務(wù)中如何運用8255和LED顯示器,通過編譯代碼來實現(xiàn)所需要數(shù)字的顯示,與數(shù)字的能夠左右移動,和加入十六進制減法和十進制乘法的功能實現(xiàn)。包括系統(tǒng)設(shè)計原理,系統(tǒng)原理圖,程序設(shè)計流程圖,原程序代碼和參考文獻等。目 錄課程設(shè)計任務(wù)書11.系統(tǒng)設(shè)計說明.41.1 各部分工作原理說明.41.1.1 8255接口芯片與4×2鍵盤的連接41.1.2 LED顯示器的工作方式.51.2 8255A與鍵盤、顯示器的連接圖.62.程序設(shè)計及流程圖.72.1
4、顯示程序.72.1.1流程圖.72.1.2源程序.82.2鍵盤程序.92.2.1流程圖.92.2.2源程序.102.3 計算器程序.132.3.1流程圖.132.3.2源程序.143.主要參考文獻.214.心得體會211 系統(tǒng)設(shè)計說明如電路框圖所示,本系統(tǒng)是一個由CPU控制的8255A和兩個74LS07同向驅(qū)動電路組成,通過對8255A的編程,以實現(xiàn)對鍵盤和LED數(shù)碼管顯示器的控制。系統(tǒng)中,8255A的PA4PA7引線作為鍵盤的控制輸出,同時也作為LED數(shù)碼管顯示器的片選控制;PC2和PC6引線作為鍵盤的控制輸入,用以確定鍵盤按鍵的位置。PB7PB0引腳作為LED數(shù)碼管顯示器的數(shù)碼管控制(PB
5、7PB0)分別接到液晶顯示器的數(shù)碼管控制的AH接口),用以確定數(shù)碼管的亮與滅。通過對8255A的編程,把PA和PC口的輸入信號,轉(zhuǎn)變成PB口的輸出信號,控制LED數(shù)碼管顯示器,同時,還要實現(xiàn)對應(yīng)的功能。通過對8255A的編程,把輸入的信號經(jīng)過處理,顯示在顯示器上。1.1 各部分工作原理說明1.1.1 8255接口芯片與2×4鍵盤的連接圖中有2行4列,4根線于PA口相連,2根列線與PC口的PC2,PC6相連。按鍵設(shè)置在行、列交點處(數(shù)字或字符為其鍵號),行、列線分別連接到按鍵開關(guān)的兩端。當列線通過上拉電阻接+5V時,就被鉗位在高電平狀態(tài)。鍵盤中有無鍵按下是由行線送入全掃描字、列線讀入行
6、線狀態(tài)來判斷的。這就是:給行線所有I/O線均置成低電平,然后讀入列線電平狀態(tài)。如果有鍵按下,總會有一根列線電平被拉至低電平,從而使列線輸入不全為1。鍵盤中哪一個鍵按下是由行線逐行置低電平后,檢查列線輸入狀態(tài)予以確定的。其方法是:依次給行線送低電平,然后查所有列線狀態(tài),如果全為1,則所按下之鍵不在次行。如果不全為1,則所按下之鍵必在次行。而且是在與0電平行線相交點上的那個鍵。鍵盤的工作方式采用編程掃描工作方式,即通過調(diào)用鍵盤子程序來響應(yīng)鍵輸入的要求,在鍵盤掃描子程序中完成下述功能:1) 判斷鍵盤上有無鍵按下。其方法是先使PA7PA00,然后讀PC2、PC6的狀態(tài),若全為1,則鍵盤中無鍵按下;若不
7、全為1,則說明鍵盤中有鍵按下。2) 去除按鍵的抖動影響。對于由機械觸點構(gòu)成的按鍵,由于機械觸點的彈性作用,觸點在閉合及斷開瞬間有一個抖動過程,一般為510ms時間。為了消除抖動影響可作這樣處理:當判斷有鍵按下后,軟件延時一段時間在判斷鍵盤狀態(tài),如果仍有鍵按下狀態(tài),則認為有一個確定的鍵按下,否則按鍵抖動處理。3) 求按下鍵的鍵值及鍵號。鍵盤上的每個鍵都對應(yīng)一個鍵值。鍵值的組成:高8位為掃描該鍵時的行線輸出值(PA4PA7),高8位為該鍵按下時的列線輸入值(PC2、PC6為有效位,其余位令其為1)。由于鍵盤中鍵號排列無規(guī)律,不能通過對鍵值直接運算得到鍵號。因此必須先判斷按下鍵是使PC2=0還是PC
8、6=0,然后再查為零的列線上鍵按下時其8位鍵值中是否有一位為零,若為零則可得到鍵值。求按下鍵的鍵值及鍵號的目的是使程序轉(zhuǎn)到相應(yīng)的地址去完成該鍵的操作。一般,對數(shù)字鍵就是直接將該號送到顯示緩沖區(qū)進行顯示,對功能鍵則必須先找到該功能鍵處理程序入口地址,并轉(zhuǎn)去執(zhí)行該鍵的命令。因此當鍵號求到后,還必須找到功能處理入口。4) 為保證鍵閉合依次CPU僅進行依次鍵功能操作。程序中需要等待鍵釋放以后再將鍵號送累加器AH。1.1.2 LED顯示器的工作方式LED數(shù)碼管是目前最常用的數(shù)字顯示器,圖A、B為共陰管和共陽管的電路,圖C為兩種不同出線形式的引出腳功能圖。一個LED數(shù)碼管可用來顯示一位09十進制數(shù)和一個小
9、數(shù)點。小型數(shù)碼管(0.5寸和0.36寸)每段發(fā)光二極管的正向壓降,隨顯示光(通常為紅、綠、黃、橙色)的顏色不同略有差別,通常約為22.5V,每個發(fā)光二極管的點亮電流在510mA。LED數(shù)碼管要顯示BCD碼所表示的十進制數(shù)字就需要有一個專門的譯碼器,該譯碼器不但要完成譯碼功能,還要有相當?shù)尿?qū)動能力。圖A 共陰連接(“1”電平驅(qū)動) 圖B 共陽連接(“0”電平驅(qū)動)圖C LED數(shù)碼管符號及引腳功能圖LED顯示器有靜態(tài)和動態(tài)兩種工作方式LED顯示器工作在靜態(tài)顯示方式下,共陰極或共陽極連接在一起,然后接地或+5V;每位的段選線(A,B,G,H)與一個8位并行口相連。這樣,只要在每一位的段選線上保持段選
10、碼電平,該位就能保持相應(yīng)的顯示字符。在多位LED顯示時,為了化簡電路,降低成本,將所有位的斷選線并聯(lián)在一起,由一個8位的I/O口控制,即控制段選碼而共陰極或共陽極點分別由相應(yīng)的I/O線控制即控制位選碼,這就是動態(tài)顯示。4位LED動態(tài)顯示電路只需一個8位I/O口及一個4位I/O口,其中8個I/O控制段選碼,4位I/O控制位選。進行4位字符顯示時,采用掃描顯示方式,即在每一瞬間只使某一位顯示相應(yīng)字符,在此瞬間,段選控制I/O口輸出相應(yīng)字符段選碼,位選控制I/O口在該顯示位送入選通電平(共陰極送低電平,共陽極送高電平),以保證該位顯示相應(yīng)字符。如此輪流,使每位顯示該位應(yīng)顯示字符,并保持延遲一段時間(
11、15ms),以造成視覺暫留效果。不斷循環(huán)送出相應(yīng)的段選碼、位選碼,就可以獲得視覺穩(wěn)定的顯示狀態(tài)。1.2 8255A與鍵盤、顯示器的連接圖本設(shè)計采用8255接口芯片作為2×4鍵盤與4位七段數(shù)碼管顯示器的接口。74LS0774LS07PB0PB7PC2PC6PA7PA4 4.7K×2Y1Y2X1X2X3X4×=92478PA6PA5+5VABCDEFGDP+5V:4.7k4.7k2 程序設(shè)計及流程圖2.1顯示程序123EFD要求:在顯示器上顯示任意六位十六進制數(shù) 2.1.1 流程圖開始初始化讀入輸出字符片選顯示器校對表首地址并輸出延時結(jié)束2.1.2 源程序程序如下:S
12、TACK SEGMENTDW 64 DUP(?)STACK ENDSDATA SEGMENT TABL DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H, 7CH,39H,5EH,79H,71H ;數(shù)碼轉(zhuǎn)化表DATA1 DB 01H,02H,03H,0EH,0FH,0DHDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DTAT,SS:STACKSTART:MOV AX,DATAMOV DS,AXMOV BX,OFFSET TABLMOV SI,OFFSET DATA1MOV DX,0606HMOV AL,80HOUT D
13、X,ALS1:CALL DISPJMP S1DISP:PUSH AXPUSH CXPUSH SIMOV CX,06HMOV AH,0FEHA1:MOV AL,AHMOV DX, 0602HOUT DX,ALMOV AL,SIXLAT MOV DX,0604HOUT DX,ALCALL DELAYINC SIROL AH,1LOOP A1POP SIPOP CXPOP AXRETDELAY:PUSH AX ;延時子程序PUSH CXMOV CX,0006HT1:MOV AX,0100HT2:DEC AXJNZ T2LOOP T1POP CXPOP AXRETCODE ENDSEND START2
14、.2 鍵盤程序要求:將8個鍵定義鍵值為按任意鍵在顯示器上顯示對應(yīng)鍵值A(chǔ)B25985F2.2.1 流程圖開始8255初始化有無壓鍵顯示掃描保存數(shù)據(jù)有無放鍵顯示掃描NYNY2.2.2 源程序程序如下:STACK SEGMENTDW 64 DUP(?)STACK ENDSDATA SEGMENT VAR1 DB 0H,0H,0H,0H TABL DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH, 77H,7CH,39H,5EH,79H,71H ;轉(zhuǎn)為顯示碼 DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV A
15、X,DATAMOV DS,AXMOV DX,0606H ;8055A的初始化 MOV AL,90H OUT DX,ALSTT:MOV AL,00H ;鍵盤測試有無壓鍵MOV DX,0602HOUT DX,ALNEXT:MOV DX,0600HIN AL,DXAND AL,0CH ;通過掃描A口低位測試是否按鍵CMP AL,0CHJNZ KEYABCCALL DISPJMP STTKEYABC:CALL TIME ;調(diào)用延時,去抖動MOV DX,0600H ;送入A口數(shù)據(jù)IN AL,DXAND AL,0CH ;對數(shù)據(jù)前四位清零CMP AL,0CH ;比較后四位數(shù)據(jù)JNZ KEY ;轉(zhuǎn)移到檢測按下
16、哪個數(shù)字鍵JMP STT ;返回檢測鍵盤KEY:MOV AL,0FEH ;檢測數(shù)字A鍵MOV DX,0602HOUT DX,ALMOV DX,0600HIN AL,DXTEST AL,08H ;測試按鍵JNZ KEY_9 ;轉(zhuǎn)移檢測下一個數(shù)字鍵CALL KEYA JMP STTK ;調(diào)用數(shù)字鍵處理程序KEY_9:TEST AL,04H ;檢測數(shù)字鍵9JNZ KEY_B CALL KEY9JMP STTKKEY_B: MOV AL,0FDH ;檢測數(shù)字鍵BMOV DX,0602HOUT DX,ALMOV DX,0600HIN AL,DXTEST AL,08HJNZ KEY_8CALL KEYBJ
17、MP STTKKEY_8:TEST AL,04H ;檢測數(shù)字鍵8JNZ KEY_2CALL KEY8JMP STTKKEY_2:MOV AL,0FBH ;檢測數(shù)字鍵2MOV DX,0602HOUT DX,ALMOV DX,0600HIN AL,DXTEST AL,08HJNZ KEY_CCALL KEY2JMP STTKKEY_C:TEST AL,04H ;檢測數(shù)字鍵CJNZ KEY_5CALL KEYCJMP STTKKEY_5:MOV AL,0F7H ;檢測數(shù)字鍵5MOV DX,0602HOUT DX,ALMOV DX,0600HIN AL,DXTEST AL,08HJNZ KEY_FCA
18、LL KEY5JMP STTKKEY_F:TEST AL,04H ;檢測數(shù)字鍵FJNZ KEY_00CALL KEYFKEY_00:JMP STTKKEYA:CALL LP1 ;置數(shù)AMOV AL,0AHMOV SI,ALCALL DISPRETKEY9:CALL LP1 ;置數(shù)9 MOV AL,09HMOV SI,ALCALL DISPRETKEYB:CALL LP1 ;置數(shù)BMOV AL,0BHM0V SI,ALCALL DISPRETKEY8:CALL LP1 ;置數(shù)8MOV AL,08HMOV SI,ALCALL DISPRETKEY2:CALL LP1 ;置數(shù)2MOV AL,02HM
19、OV SI,ALCALL DISPRETKEYC:CALL LP1 ;置數(shù)CMOV AL,0CHMOV SI,ALCALL DISPRETKEY5:CALL LP1 ;置數(shù)5MOV AL,05HMOV SI,ALCALL DISPRETKEYF:CALL LP1 ;置數(shù)FMOV AL,0FHMOV SI,ALCALL DISPRETLP1:MOV CX,0005H ;數(shù)據(jù)保存,移位MOV SI OFFSET VAR1LP2:mov AL,SI+1MOV SI,ALINC SILOOP LP2RETDISP:PUSH AXPUSH CXPUSH SIMOV BX,OFFSET TABLMOV S
20、I OFFSET VAR1MOV CX,06HMOV AH,0FEHA1:MOV AL,AHMOV DX,0602HOUT DX,ALMOV AL,SIXLATMOV DX,0604HOUT DX,ALCALL DELAYINC SIROL AH,ILOOP A1POP SIPOP CXPOP AXRETDELAY:PUSH AX ;延時子程序PUSH CXMOV CX,0006HT1:MOV AX,0100HT2:DEC AXJNZ T2LOOP T1POP CXPOP AXRETTIME:PUSH AX PUSH CXMOV CX,0002HTIME1:MOV AX,0300HTIME2:
21、DEC AXJNZ TIME2LOOP TIME1POP CXPOP AXRETSTTK:CALL DISP ;放鍵測試程序MOV AL,00HMOV DX,0602HOUT DX,ALMOV DX,0600HIN AL,DXAND AL,0CHCMP AL,0CHJNZ STTKJMP STT CODE ENDSEND START2.3計算器程序要求: A)定義鍵盤按鍵,8個為數(shù)字鍵0到7,3個功能鍵:加號+,減號-,等號;B)可進行五位8進制減法運算; C)可進行四位8進制加法運算。2.3.1 流程圖開始8255初始化有無壓鍵顯示掃描是數(shù)字鍵?有標志?加號?乘號?設(shè)加標志設(shè)乘標志清零顯示器
22、,清標志位保存數(shù)據(jù)放鍵?顯示掃描清零顯示器進行加、乘運算,存結(jié)果等號?YYYYYYYNNNNNN程序流程圖2.3.2 源程序程序如下:STACK SEGMENT STACKDW 64 DUP(?)STACK ENDSDATA SEGMENTVAR1 DB 0BFH,0DFH,0EFH,0F7HVAR2 DB 0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCHVAR3 DB 00H,00H,00H,00H,00H,00H,00H,00H VAR4 DB 00H,00H,00H,00H,00H,00H,00H,00HTABLE DB 0FCH,60H,0DAH,0F2H
23、,066H,0B6H,0BEH,0E4H,0FEH,0F6H,0EEH,3EH,9CH,7AH,9EH,8EHDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV AL,82H;8255A初始化OUT 63H,ALSTT:MOV AL,00H;鍵盤測試OUT 60H,ALNEXT: IN AL,61HAND AL, 60H;通過掃描C口低位測試是否按鍵CMP AL,60HJNZ KEYABCCALL DISPJMP STTKEYABC:CALL TIME;調(diào)用延時,去抖動IN AL,
24、61H;送入C口數(shù)據(jù)AND AL,60H;數(shù)據(jù)前六位清零CMP AL,60H;比較數(shù)據(jù)后兩位JNZ KEY_C ;轉(zhuǎn)移到檢測按下哪個數(shù)字鍵JMP STT;返回檢測鍵盤KEY_C: MOV AL, 0F7H;檢測數(shù)字2鍵OUT 60H,ALIN AL,61HTEST AL,20H;測試按鍵JNZ KEY_D;轉(zhuǎn)移檢測下一個數(shù)字鍵CALL KEYC ;調(diào)用數(shù)字鍵處理程序JMP STTK;放鍵返回KEY_D : TEST AL,40H;檢測功能×鍵JNZ KEY_4;轉(zhuǎn)移檢測下一個數(shù)字鍵CALL KEYD ;調(diào)用數(shù)字鍵處理程序JMP STTK;放鍵返回KEY_4 : MOV AL, 0EF
25、H;檢測數(shù)字4鍵OUT 60H,ALIN AL,61HTEST AL,20H;測試按鍵JNZ KEY_1;轉(zhuǎn)移檢測下一個數(shù)字鍵CALL KEY4 ;調(diào)用數(shù)字鍵處理程序JMP STTK;放鍵返回KEY_1 : TEST AL,40H;檢測功能-鍵JNZ KEY_6;轉(zhuǎn)移檢測下一個數(shù)字鍵CALL KEYS ;調(diào)用數(shù)字鍵處理程序JMP STTKKEY_6 : MOV AL,0DFH;檢測數(shù)字7鍵OUT 60H,ALIN AL,61HTEST AL,20H;測試按鍵JNZ KEY_2;轉(zhuǎn)移檢測下一個數(shù)字鍵CALL KEY6;調(diào)用數(shù)字鍵處理程序JMP STTK;放鍵返回KEY_2 : TEST AL,4
26、0H;檢測功能=鍵JNZ KEY_8;轉(zhuǎn)移檢測下一個數(shù)字鍵CALL KEY2;調(diào)用數(shù)字鍵處理程序JMP STTK;放鍵返回KEY_8 : MOV AL,0BFH;檢測數(shù)字8鍵OUT 60H,ALIN AL,61HTEST AL,20H;測試按鍵JNZ KEY_E;轉(zhuǎn)移檢測下一個數(shù)字鍵CALL KEY8 ;調(diào)用數(shù)字鍵處理程序JMP STTK;放鍵返回KEY_E : TEST AL,40H;檢測數(shù)字9鍵JNZ KEY_HCALL KEYE;調(diào)用數(shù)字鍵處理程序KEY_H: JMP STTK;放鍵返回KEYC: CMP BH,00HJZ KEYCCCALL CLEARKEYCC:CALL LP1MOV
27、 AL,9CHMOV SI+3,ALMOV AL,0CHMOV DI+3,ALCALL DISPRETKEYD: CMP BH,00HJZ KEYDDCALL CLEARKEYDD:CALL LP1MOV AL,7AHMOV SI+3,ALMOV AL,0DHMOV DI+3,ALCALL DISPRETKEY4: CMP BH,00HJZ KEY44CALL CLEARKEY44:CALL LP1MOV AL,66HMOV SI+3,ALMOV AL,04HMOV DI+3,ALCALL DISPRETKEY6: CMP BH,00HJZ KEY66CALL CLEARKEY66:CALL
28、LP1MOV AL,0BEHMOV SI+3,ALMOV AL,06HMOV DI+3,ALCALL DISPRETKEY8: CMP BH,00HJZ KEY88CALL CLEARKEY88:CALL LP1MOV AL, 0FEHMOV SI+3,ALMOV AL,08HMOV DI+3,ALCALL DISPRETKEY1: CMP BH,00HJNZ KEY11CALL LP3KEY11:MOV BX,0101H RETKEY2: CMP BH,00HJNZ KEY22CALL LP3KEY22:MOV BX,0102H RETKEYE: MOV BH,01HCMP DH,01HJZ
29、 K0MOV DH,01HMOV BH,01HCMP BL,01HJZ K1CMP BL,02HJZ K2STTE:RET K0: CALL CLEARK1:CALL ADD1JMP STTEK2:CALL MUL1JMP STTECLEAR:MOV SI,OFFSET VAR2MOV DI,OFFSET VAR3MOV CX,0004HCLEAR1:MOV AL,0FCHMOV SI,ALMOV AL,00HMOV DI,ALINC SIINC DILOOP CLEAR1MOV BH,00HRETADD1:LEA SI,VAR3LEA DI,VAR4CLCMOV CX,0003HADD2:M
30、OV AL,DIADD AL,SICMP AL,10HJL ADD3SUB AL,10HMOV BL,01HADD DI+1,BLADD3:MOV DI,ALINC SIINC DILOOP ADD2CALL CHANGECALL DISPRETMUL1:MOV SI,OFFSET VAR3MOV DI,OFFSET VAR4MOV CL,04HMOV AX,0000HMOV AL,SI+1SAL AL,CLADD AL,SIMOV BL,00HMOV BL,DI+1SHL BL,CLADD BL,DIMUL BLMOV CX,0004HA1: MOV BX,AXAND AX,000FHMOV
31、 DI,ALINC DIMOV AX,BXPUSH CXMOV CL,04HSHR AX,CLPOP CXLOOP A1CALL CHANGECALL DISPRETLP1:MOV CX,0004H;數(shù)據(jù)移位保存子程序(前進三位)MOV SI,OFFSET VAR2;SI指向顯示代碼緩沖區(qū)首址MOV DI,OFFSET VAR3LP2:MOV AL,SI+3MOV SI+4,AL MOV AL,DI+3;顯示代碼移位MOV DI+4,ALDEC SI ;顯示數(shù)字移位DEC DILOOP LP2RET;移位返回LP3: MOV CX,0004HMOV SI,OFFSET VAR3MOV DI,O
32、FFSET VAR4LP4: MOV AL,SIMOV DI,ALINC SIINC DILOOP LP4RETCHANGE:MOV SI,OFFSET VAR2MOV DI,OFFSET VAR4MOV BX,OFFSET TABLEMOV CX,0004HCOMP0: MOV AL,DI XLATMOV SI,ALINC SIINC DILOOP COMP0RET DISP:LEA SI,VAR2LEA DI,VAR1MOV DL,DI+3CMP DL,0FCHJNZ DIR3MOV DL,DI+2CMP DL,0FCHJNZ DIR2MOV DL,DI+1CMP DL,0FCHJNZ DIR1JMPDIR0DIR3:MOV CX,0004H JMP DIRDIR2:MOV CX,0003H JMP DIRDIR1:MOV CX,0002H JMP DIRDIR0:MOV CX,0001HDIR:MOV AL,SIOUT 62H,ALMOV AL,DIOUT 60H,ALCALL TIMEINC SIINC DILOOP DIRRETTIME: PUSH AX PUSH CX;延時子程序MOV CX,0040H TIME1:MOV AX,0003HTIME2:DEC AXJNZ TIME2LOOP TI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit 2 An Accident Lesson 1 Enjoy the story(教學設(shè)計)-2024-2025學年北師大版(三起)英語六年級上冊
- Unit 4 Preparing for the Topic Pronunciation 教學設(shè)計 -2024-2025學年仁愛科普版英語七年級上冊
- Starter Unit 3 Welcome (Section A 1a-2d)教學設(shè)計 2024-2025學年人教版英語七年級上冊
- 圖形的放大與縮?。ń虒W設(shè)計)-2023-2024學年六年級下冊數(shù)學人教版
- 第4單元 單元分析2024-2025學年五年級語文上冊同步教學設(shè)計(統(tǒng)編版)
- 2025年瓶蓋內(nèi)墊料行業(yè)深度研究分析報告
- 人教版初中歷史與社會七年級上冊 3.3.1 耕海牧漁 教學設(shè)計
- 2025年環(huán)保粘接材料項目合作計劃書
- 第1課 計算機網(wǎng)絡(luò)-教學設(shè)計 2024-2025學年浙教版(2023)初中信息技術(shù)七年級上冊
- 數(shù)字化轉(zhuǎn)型在中式餐飲中的應(yīng)用
- 2023屆高考復(fù)習之文學類文本閱讀訓(xùn)練
- 建筑施工圖設(shè)計教程
- 義務(wù)教育(道德與法治)新課程標準(2022年修訂版)
- 高中化學必修一復(fù)習提綱
- 皮帶輸送機檢修及維護
- 壓力容器設(shè)計綜合知識要點 (1)
- 工程款支付報審表
- 同位角內(nèi)錯角同旁內(nèi)角專項練習題有答案
- 常用抗凝藥物的應(yīng)用及護理PPT課件
- 淺談壓力容器產(chǎn)品監(jiān)督檢驗工作要點
- 食品分析實驗講義(1)
評論
0/150
提交評論