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

下載本文檔

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

文檔簡介

1、<p>  膅芆蚅袂裊聿薁袁羇芄蕆袁肀肇莃袀衿芃荿衿羈膆蚇袈肄莁薃袇膆膄葿袆袆荿蒞羅羈膂蚄羅肀莈薀羄膃膀蒆羃羂莆蒂蕿肅艿莈蕿?zāi)i蒄蚇薈袇芇薃薇罿蒂蒈蚆肁芅莄蚅膄肈蚃蚄袃芄蠆蚃肆肆薅蚃膈莂蒁螞袇膅莇蟻羀莀蚆蝕肂膃薂蝿膄莈蒈螈襖膁莄螇羆莇芀螇腿膀蚈螆袈蒅薄螅羈羋蒀螄肅蒃莆螃膅芆蚅袂裊聿薁袁羇芄蕆袁肀肇莃袀衿芃荿衿羈膆蚇袈肄莁薃袇膆膄葿袆袆荿蒞羅羈膂蚄羅肀莈薀羄膃膀蒆羃羂莆蒂蕿肅艿莈蕿?zāi)i蒄蚇薈袇芇薃薇罿蒂蒈蚆肁芅莄蚅膄肈蚃蚄袃芄蠆蚃肆

2、肆薅蚃膈莂蒁螞袇膅莇蟻羀莀蚆蝕肂膃薂蝿膄莈蒈螈襖膁莄螇羆莇芀螇腿膀蚈螆袈蒅薄螅羈羋蒀螄肅蒃莆螃膅芆蚅袂裊聿薁袁羇芄蕆袁肀肇莃袀衿芃荿衿羈膆蚇袈肄莁薃袇膆膄葿袆袆荿蒞羅羈膂蚄羅肀莈薀羄膃膀蒆羃羂莆蒂蕿肅艿莈蕿?zāi)i蒄蚇薈袇芇薃薇罿蒂蒈蚆肁芅莄蚅膄肈蚃蚄袃芄蠆蚃肆肆薅蚃膈莂蒁螞袇膅莇蟻羀莀蚆蝕肂膃薂蝿膄莈蒈螈襖膁莄螇羆莇芀螇腿膀蚈螆袈蒅薄螅羈羋蒀螄肅蒃莆螃膅芆蚅袂裊聿薁袁羇芄蕆袁肀肇莃袀衿芃荿衿羈膆蚇袈肄莁薃袇膆膄葿袆袆荿蒞羅羈膂蚄羅肀莈薀羄膃

3、膀蒆羃羂莆蒂蕿肅艿莈蕿?zāi)i蒄蚇薈袇芇薃薇罿蒂蒈蚆肁芅莄蚅膄肈蚃蚄袃芄蠆蚃肆肆薅蚃膈莂蒁螞袇膅莇蟻羀莀蚆蝕肂膃薂蝿膄莈蒈螈襖膁莄螇羆莇芀螇腿膀蚈螆</p><p><b>  課程設(shè)計(jì)報(bào)告</b></p><p>  課程 微機(jī)原理課程設(shè)計(jì) </p><p>  題目 基于PC機(jī)串口的方波發(fā)

4、生器 </p><p>  系 別 物理與電子工程學(xué)院 </p><p>  年 級(jí) 08 專 業(yè) 電子信息工程 </p><p>  班 級(jí) 電信1 學(xué) 號(hào) 160408109 </p>&l

5、t;p>  學(xué)生姓名 沈略 </p><p>  指導(dǎo)教師 馬玉龍 職 稱 助教 </p><p>  設(shè)計(jì)時(shí)間 2011.6.28—2011.7.08 </p><p><b>  目錄</b

6、></p><p>  緒論…………………………………………………………………………………`………………………………1</p><p>  第一章 基于PC機(jī)串口的方波發(fā)生器設(shè)計(jì)分析…………………………...……………………….2</p><p>  1.1 設(shè)計(jì)內(nèi)容…………………………………………………………………………………………………....2</

7、p><p>  1.2 pc機(jī)串口介紹………………………………………………………………………………………………2</p><p>  1.2.1 9針串口說明………………………………………………………………………………………..2</p><p>  1.2.2 RS232C串口通信接線方法……………………………………………………………2</p><

8、p>  1.2.3 8050功能……………………………………………………………………………………………3</p><p>  1.3 設(shè)計(jì)方案…………………………………………………………………………………………………..3</p><p>  1.3.1鍵盤控制頻率方案一…………………………………………………………………………………….4</p><p>  

9、1.3.2鍵盤控制頻率方案二…………………………………………………………………………………….4</p><p>  第二章 基于PC機(jī)串口的方波發(fā)生器軟件設(shè)計(jì)……………………………………………………5</p><p>  2.1匯編語言編譯軟件………………………………………………………………………………………….5</p><p>  2.2 程序框圖………………

10、……………………………………………………………………………………5</p><p>  2.3 具體程序設(shè)計(jì)………………………………………………………………………………………………6</p><p>  2.3.1 讀取鍵盤值………………………………………………………………………………………….6</p><p>  `2.3.2 中斷程序……………………………

11、……………………………………………………………….6</p><p>  2.3.3 延時(shí)子程序………………………………………………………………………………………….6</p><p>  2.4 設(shè)計(jì)結(jié)果……………………………………………………………………………………………………7</p><p>  第三章 心得與體會(huì)…………………………………………………………

12、……………………………………….9</p><p>  參考文獻(xiàn)……………………………………………………………….……………………………………………10</p><p><b>  附錄</b></p><p><b>  緒論</b></p><p>  串口通信是一種在非常常用的通信手段。異步串

13、行通信常用的標(biāo)準(zhǔn)接口基本上有以下三種:RS-232C(RS-232A,RS-232B)、RS-422和RS-485。串行接口是一種可以將接受來自CPU的并行數(shù)據(jù)字符轉(zhuǎn)換為連續(xù)的串行數(shù)據(jù)流發(fā)送出去,同時(shí)可將接受的串行數(shù)據(jù)流轉(zhuǎn)換為并行的數(shù)據(jù)字符供給CPU的器件。一般完成這種功能的電路,我們稱為串行接口電路。串口通信的概念非常簡單,串口按位(bit)發(fā)送和接收字節(jié)。盡管比按字節(jié)(byte)的并行通信慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的同時(shí)用

14、另一根線接收數(shù)據(jù)。本次課程設(shè)計(jì)的題目要求即為利用PC機(jī)的串口接口來進(jìn)行發(fā)波信號(hào)的產(chǎn)生。因此只需要利用匯編語言編寫程序并且生成.EXE文件運(yùn)行即可通過示波器觀察到方波。因此可以說是一種非常簡便的方波發(fā)生系統(tǒng),在硬件層次只需要一根串口線和一臺(tái)PC機(jī)即可完成。因此所有的工作就全部集中在匯編程序的編寫上面。以下報(bào)告將本次課程設(shè)計(jì)分成三個(gè)部分進(jìn)行闡述。最后是本次設(shè)計(jì)的心得與體會(huì)。</p><p>  第一章 基于PC機(jī)串口

15、的方波發(fā)生器設(shè)計(jì)分析</p><p><b>  1.1設(shè)計(jì)內(nèi)容</b></p><p>  利用PC機(jī)串口(COM1)的DTR引腳輸出一個(gè)頻率可設(shè)置的方波,用示波器可觀察。</p><p>  1.2 PC機(jī)串口介紹</p><p>  目前較為常用的串口有 9 針串口(DB9)和 25 針串口(DB25),通信距離較

16、近時(shí)(<12m),可以用電纜線直接連接標(biāo)準(zhǔn) RS232 端口(RS422,RS485 較遠(yuǎn)),若距離較遠(yuǎn),需附加調(diào)制解調(diào)器(MODEM)。最為簡單且常用的是三線制接法,即地、接收數(shù)據(jù)和發(fā)送數(shù)據(jù)三腳相連。</p><p>  1.2.1 9針串口引腳說明</p><p><b>  圖1 9針串口圖 </b></p><p><b&g

17、t;  表1 針串口引腳表</b></p><p>  1.2.2 RS232C串口通信接線方法</p><p>  首先,串口傳輸數(shù)據(jù)只要有接收數(shù)據(jù)針腳和發(fā)送針腳就能實(shí)現(xiàn):同一個(gè)串口的收腳和發(fā)送腳直接用線相連,兩個(gè)串口相連或一個(gè)串口和多個(gè)串口相連同一個(gè)串口的接收和發(fā)送腳直接用線相連對(duì)9針串口和25針串口,均是2與3直接相連。</p><p>  兩個(gè)不

18、同串口(不論是同一臺(tái)計(jì)算機(jī)的兩個(gè)串口或是不同計(jì)算機(jī)的串口)</p><p>  上面表格是對(duì)微機(jī)標(biāo)準(zhǔn)串行口而言的,還有許多非標(biāo)準(zhǔn)設(shè)備,如接收 GPS 數(shù)據(jù)或電子羅盤數(shù)據(jù),只要記住一個(gè)原則:接收數(shù)據(jù)針腳(或線)與發(fā)送數(shù)據(jù)針腳(或線)相連,彼此交叉,信號(hào)地對(duì)應(yīng)相接,就能百戰(zhàn)百勝。</p><p>  串口調(diào)試中要注意的幾點(diǎn):</p><p>  1.不同編碼機(jī)制不能混接

19、,如RS232C不能直接與RS422接口相連,市面上專門的各種轉(zhuǎn)換器賣,必須通過轉(zhuǎn)換器才能連接; </p><p>  2.線路焊接要牢固,不然程序沒問題,卻因?yàn)榻泳€問題誤事; </p><p>  4.強(qiáng)烈建議不要帶電插撥串口,插撥時(shí)至少有一端是斷電的,否則串口易損壞。</p><p>  1.2.3 8250 功能</p><p>  根

20、據(jù)本次設(shè)計(jì)要求:利用 PC 機(jī)串口(COM1)的 DTR 引腳輸出一個(gè)頻率可設(shè)置的方波, 用示波器可觀察,所以我們選擇了 8250 的 MCR 寄存器(圖 2.3)的 D0 引腳(也就是 DTR 引腳)作為方波的輸出端。</p><p>  1=自測(cè)試循環(huán)回送狀態(tài)</p><p>  1=DTR 引腳為低電平(表 示數(shù)據(jù)終端準(zhǔn)備好)</p><p>  0=正常工作

21、狀態(tài) 1=RTS 引腳為低電平(表 示請(qǐng)求發(fā)送)</p><p><b>  恒為 0</b></p><p>  1=OUT1 引腳為低電平</p><p>  1=OUT2 引腳為低電平</p><p><b>  圖2 MCR功能</b></p><p><b&

22、gt;  1.3 設(shè)計(jì)方案</b></p><p>  按照題目的要求只需在PC機(jī)上用匯編語言編寫一段程序然后通過示波器檢測(cè)串口的DTR端口的輸出的波形是方波即可。此外還需用鍵盤控制頻率,使得方波頻率實(shí)現(xiàn)可調(diào)。程序流程通過以下流程圖說明:</p><p><b>  圖3 設(shè)計(jì)流程圖</b></p><p>  根據(jù)流程圖,在鍵盤控

23、制頻率的模塊有兩種方案可以選擇,分別是查詢和中斷,以下做一些說明.</p><p>  1.3.1 鍵盤控制頻率方案一</p><p>  方案一是查詢的方法,主要思想是在主程序中的開頭讀取一次鍵盤的輸入值進(jìn)行判斷,如果沒有按鍵就執(zhí)行下面的程序。由于程序復(fù)雜度不是很高,程序執(zhí)行的速度很快,因此效果上類似于在執(zhí)行中斷。</p><p>  1.3.2 鍵盤控制頻率方案

24、二</p><p>  方案二是中斷的方式。其實(shí)系統(tǒng)自身已經(jīng)提供了BIOS的16號(hào)中斷,DOS的21號(hào)中斷的1號(hào)、2號(hào)、9號(hào)功能用于鍵盤的中斷。此外BIOS的16號(hào)中斷的1號(hào)功滿足按鍵可以運(yùn)行下面的程序。通過循環(huán)取反功能在 DTR 引腳輸出 0、1,從而在示波器上顯示出方波,其中鍵盤輸入中斷(上鍵和下鍵)改變延時(shí)來改變方波的頻率,ESC 鍵退出程序。采用了方案二。</p><p>  第二

25、章 基于PC機(jī)串口的方波發(fā)生器軟件設(shè)計(jì)</p><p>  2.1匯編語言編譯軟件</p><p>  本次的課程設(shè)計(jì)用匯編語言進(jìn)行編程,則需要選擇一款編譯軟件對(duì)程序進(jìn)行編譯。由于在《微機(jī)原理與接口技術(shù)》課程中我們選擇的是EMU8086編譯軟件進(jìn)行編譯。當(dāng)然還有其它的匯編語言編譯軟件可以選擇,例如DICE8086等等。</p><p><b>  2.2

26、程序框圖</b></p><p><b>  圖4 程序框圖</b></p><p>  2.3 具體程序設(shè)計(jì)</p><p>  具體程序的設(shè)計(jì)分為鍵盤按鍵值的讀取、串口輸出兩大模塊,下面作詳細(xì)介紹。</p><p>  2.3.1 讀取鍵盤值</p><p>  通過查詢?cè)O(shè)備管理器

27、中鍵盤資源的信息,我們可以查詢得鍵盤接口的地址是0x0060、0x0061還有中斷請(qǐng)求為01。經(jīng)過測(cè)試發(fā)現(xiàn)地址0x0060是鍵盤接口按鍵數(shù)據(jù)的讀入地址。并且通過代碼測(cè)試和查詢一些資料后發(fā)現(xiàn)這樣讀取的按鍵值是某個(gè)按鍵按下時(shí)的掃描碼(某一按鍵的掃描碼分為兩個(gè):按下時(shí)一個(gè)和松開時(shí)的一個(gè))的值而非ASCII碼值。使用的匯編語句如下:</p><p>  MOV DX,60H;60H是鍵盤接口地址</p>

28、<p><b>  IN AX,DX</b></p><p>  MOV BL,AL;此時(shí)寄存器BL中保存的是某鍵按下時(shí)的掃描碼</p><p>  2.3.2 中斷程序</p><p>  鍵盤上的按鍵分為普通鍵和控制鍵兩類。控制鍵包括Shift、Ctrl、Alt、CapsLock 等, 其余為普通鍵。對(duì)于每個(gè)普通鍵,根據(jù)

29、各鍵在鍵盤上的分布位置對(duì)鍵進(jìn)行編碼,得到鍵盤掃描碼 。每個(gè)鍵還有ASCII碼。當(dāng)發(fā)生9號(hào)中斷請(qǐng)求時(shí),表明鍵盤有按鍵信息需要送到主機(jī)中,在沒有被屏蔽的情況 下,CPU將響應(yīng)該中斷,執(zhí)行一次9號(hào)中斷服務(wù)程序,處理從鍵盤傳來的信息。</p><p>  INT9PROC NEAR;段內(nèi)調(diào)用 </p><p><b>  PUSH AX</b></p>&l

30、t;p><b>  PUSH BX </b></p><p><b>  PUSH ES</b></p><p><b>  PUSH DX</b></p><p>  PUSH DS:[0] </p><p>  PUSH DS:[2] </p><

31、p>  PUSH CSREG </p><p>  POPDS:[0] </p><p>  PUSH IPREG </p><p>  POPDS:[2] </p><p><b>  XOR AX,AX</b></p><p><b>  IN AX,60H</b&g

32、t;</p><p><b>  PUSHF;</b></p><p>  CALL DWORD PTR DS:[0] ;調(diào)用系統(tǒng)提供的中斷處理程序 POP DS:[2]</p><p>  POP DS:[2] </p><p>  POP DS:[0]</p><p>  9號(hào)中斷服務(wù)程序的

33、功能主要有:如果是控制鍵被按下或松開,就把BIOS數(shù)據(jù)區(qū)中的 鍵盤狀態(tài)字節(jié)作相應(yīng)調(diào)整;如果是普通鍵,則把按鍵的掃描碼和ASCII碼一起存入鍵盤緩 沖區(qū)。</p><p>  2.3.3延時(shí)子函數(shù)</p><p>  延時(shí)函數(shù)起的作用是將低電平或者高電平延遲一段時(shí)間從而得到方波的效果。由于設(shè)置的五個(gè)頻率是3KHZ、2.3KHZ、1.9KHZ、1.6KHZ、1.4KHZ,所以分別延時(shí)一至五次可

34、實(shí)現(xiàn)。延時(shí)子函數(shù)的代碼如下:</p><p>  DELAYPROC NEAR </p><p><b>  PUSH AX </b></p><p><b>  PUSH DX</b></p><p>  MOV DX,DELAY_TIME;LOOP 10000000H TIMES </

35、p><p><b>  MOV AX,0</b></p><p>  S1:SUB AX,1</p><p>  SBB DX,0;SBB 帶借位減法</p><p>  CMP AX,0;根據(jù)結(jié)果置標(biāo)志位 </p><p>  JNE S1;結(jié)果不為零轉(zhuǎn)移 </p><p

36、><b>  CMP DX,0</b></p><p><b>  JNE S1</b></p><p><b>  POP DX </b></p><p><b>  POP AX</b></p><p><b>  RET;過程結(jié)束&

37、lt;/b></p><p>  DELAYENDP</p><p><b>  2.4 設(shè)計(jì)結(jié)果</b></p><p>  按照預(yù)期設(shè)計(jì)的最終結(jié)果是會(huì)有多種頻率,選取初始位置,按一次上箭頭以及按一次下箭頭的頻率。</p><p>  初始位置:2.3KHZ</p><p>  圖5

38、2.3khz方波圖</p><p>  按第一次上箭頭后:3KHZ </p><p>  圖6 3k方波圖 </p><p>  按第一次下箭頭后:1.9KHZ</p><p>  圖7 1.9khz方波圖</p><p><b>  第三章 心得與體會(huì)</b></p>&l

39、t;p><b>  參考文獻(xiàn)</b></p><p>  【1】朱金均,麻新旗編著.《微型計(jì)算機(jī)原理及應(yīng)用技術(shù)》[M].機(jī)械工業(yè)出版社,2010</p><p>  【2】朱金鈞 麻新旗. 微型計(jì)算機(jī)原理及應(yīng)用技術(shù)[M](第二版). 北京:機(jī)械工業(yè)出版社,2005. </p><p>  【3】王爽. 匯編語言[M] (第二版).北京:清

40、華大學(xué)出版社,2003.</p><p><b>  附錄</b></p><p><b>  程序代碼:</b></p><p>  INTA0 EQU 20H </p><p>  INTA1 EQU 21H</p><p>  UPEQU 200;上箭頭</p&

41、gt;<p>  DOWN EQU 208 ;下箭頭 </p><p>  KEY_ESCEQU 81H; ESC </p><p>  SH MACRO X;將16進(jìn)制碼轉(zhuǎn)換成標(biāo)準(zhǔn)ASCII碼</p><p>  LOCAL a,b,c,d,e</p><p><b>  PUSH AX </b><

42、;/p><p><b>  PUSH BX </b></p><p><b>  PUSH CX </b></p><p><b>  PUSH DX </b></p><p><b>  MOV CX,10</b></p><p>&

43、lt;b>  MOV DX,0</b></p><p><b>  MOV AX,X </b></p><p><b>  DIV CX </b></p><p>  MOV BL,DL </p><p><b>  MOV DX,0</b></p>

44、;<p><b>  DIV CX </b></p><p>  MOV BH,DL </p><p><b>  MOV DX,0</b></p><p><b>  DIV CX </b></p><p><b>  DIV CL</b>

45、</p><p>  OR AH,30H </p><p>  OR AL,30H </p><p>  OR BH,30H </p><p>  OR BL,30H </p><p>  OR DL,30H </p><p>  MOV CL,DL </p><p>&

46、lt;b>  MOV CH,AH</b></p><p><b>  MOV AH,2</b></p><p>  TEST AL,0FH </p><p><b>  JNZ a</b></p><p>  TEST CH,0FH </p><p><

47、;b>  JNZ b</b></p><p>  TEST CL,0FH </p><p><b>  JNZ c</b></p><p>  TEST BH,0FH </p><p><b>  JNZ d</b></p><p><b>  j

48、mp e</b></p><p>  a:MOV DL,AL </p><p><b>  MOV AH,2</b></p><p><b>  INT 21H</b></p><p>  b:MOV DL,CH </p><p><b>  INT

49、 21H</b></p><p>  c:MOV DL,CL </p><p><b>  INT 21H</b></p><p>  d:MOV DL,BH </p><p><b>  INT 21H</b></p><p>  e:MOV DL,BL

50、</p><p><b>  INT 21H</b></p><p><b>  POP DX </b></p><p><b>  POP CX </b></p><p><b>  POP BX </b></p><p><

51、;b>  POP AX</b></p><p>  ENDM </p><p>  STACK SEGMENT</p><p>  DQQ DB 300 DUP(?)</p><p>  STACK ENDS </p><p>  DATA

52、 SEGMENT</p><p>  MESSDB 'THATISINT9 INTERRUPT!' ,0AH,0DH,'$' </p><p>  DELAY_TIME DW 1H </p><p>  CSREG DW ?</p><p>  IPREGDW ? </p>&l

53、t;p>  STEPDW 0FH</p><p>  DATA ENDS </p><p>  CODESEGMENT</p><p>  ASSUME CS:CODE,DS:DATA,SS:STACK </p><p><b>  START: </b></p><p>  M

54、OVAX,DATA</p><p>  MOVDS,AX </p><p>  MOVAX,STACK </p><p><b>  MOVSS,AX</b></p><p><b>  MOV AX,0</b></p><p>  MOV ES,AX;設(shè)置 ES=

55、0,為獲得原理的 INT 9 中斷程序的入口地址</p><p>  PUSH ES:[9*4]</p><p>  POPCSREG;DS:[0]</p><p>  PUSH ES:[9*4+2]; 設(shè)置 自定義 的 中斷向量</p><p>  POPIPREG;DS:[2]; 將原 來的 INT 9 中斷例程的入口地址保存

56、</p><p><b>  CLI</b></p><p>  MOV WORD PTR ES:[9*4],OFFSET INT9 ;設(shè)置新的中斷向量以指向</p><p>  MOV ES:[9*4+2],CS </p><p><b>  STI</b></p>&l

57、t;p>  CALLINIT_8250;初使化 8250</p><p>  MOVDX,3FCH </p><p>  MOVAl,03h</p><p>  LP1:XORAL,03H </p><p>  OUT DX,AL </p><p>  CALL DELAY </p>&

58、lt;p><b>  JMPLP1</b></p><p>  ;;;;;退出控制臺(tái);;;;;</p><p>  STOP:MOV AX,0</p><p><b>  MOV ES,AX</b></p><p>  PUSH CSREG;DS:[2]</p><p&

59、gt;  CLI;置屏蔽中斷標(biāo)志位</p><p>  POP ES:[9*4]</p><p>  PUSH IPREG;DS:[2]</p><p>  POP ES:[9*4+2]; 將中斷 向 量表中的INT 9 中斷向量恢復(fù)</p><p>  STI;取消屏蔽 </p><p>  MOV AX,

60、4C00H ;返回 dos </p><p><b>  INT 21H</b></p><p>  ;;;;;8250 初始化;;; </p><p>  INIT_8250 PROC</p><p>  INAL,INTA1; 取中斷 屏 蔽寄存器 內(nèi)容</p><p>  MOVB

61、P,AX;送 BP</p><p>  ANDAL,0FDH ;開放 IR1 的中斷</p><p>  OUTINTA1,AL</p><p>  MOVDX,3FBH ;LCR 的口地址</p><p>  MOVAL,80H;將 DLAB 位置 1</p><p><b>  OUTD

62、X,AL</b></p><p>  MOVDX,3FBH ;DLL 的口地址</p><p>  MOVAL,60H; 寫入 1200 波特的 DLL 值,通過查表可知 1200 對(duì)應(yīng)的 DLH DLL 值 分別為 0060H</p><p><b>  OUTDX,AL</b></p><p>

63、;  MOVDX,3F9H;DLH 口地址</p><p><b>  MOVAX,0</b></p><p>  MOVDX,3FBH;設(shè)定 LCR 的口地址</p><p>  MOVAL,0EH;7 位字符,1 位停止 位,奇校驗(yàn)</p><p>  OUTDX,AL ;寫入 LCR 控制字 &

64、lt;/p><p>  MOV DX,3FCH ;設(shè)定 MCR 口地址 </p><p>  MOV AL,03H;置 MCR 控制字 </p><p><b>  OUTDX,AL</b></p><p>  MOV DX,3F9H ;設(shè)定 IER 口地址 </p><p>  MOV

65、 AL,0;禁止一切中斷 </p><p>  OUTDX,AL ;置 IER 控制字 </p><p><b>  RET</b></p><p>  INIT_8250 ENDP</p><p>  ;;;;;;;;;;;;;;;;;;;;;;;</p><p>  ;;;延時(shí)子程序;;

66、;;;;;;;;</p><p>  ;;;;;;;;;;;;;;;;;;;;;;;</p><p>  DELAYPROC NEAR </p><p><b>  PUSH AX </b></p><p><b>  PUSH DX</b></p><p>  MOV D

67、X,DELAY_TIME;LOOP 10000000H TIMES </p><p><b>  MOV AX,0</b></p><p>  S1:SUB AX,1</p><p>  SBB DX,0;SBB 帶借位減法</p><p>  CMP AX,0;根據(jù)結(jié)果置標(biāo)志位 </p><

68、p>  JNE S1;結(jié)果不為零轉(zhuǎn)移 </p><p><b>  CMP DX,0</b></p><p><b>  JNE S1</b></p><p><b>  POP DX </b></p><p><b>  POP AX</b>&l

69、t;/p><p><b>  RET;過程結(jié)束</b></p><p>  DELAYENDP</p><p>  ;;;;;INT9 中斷的改寫;;;;;;</p><p>  INT9 PROC NEAR;段內(nèi)調(diào)用</p><p><b>  PUSH AX </b>

70、</p><p><b>  PUSH BX </b></p><p><b>  PUSH ES </b></p><p><b>  PUSH DX </b></p><p>  PUSH DS:[0] </p><p>  PUSH DS:[2]

71、</p><p>  PUSH CSREG </p><p>  POPDS:[0] </p><p>  PUSH IPREG </p><p>  POPDS:[2] </p><p>  XOR AX,AX </p><p><b>  IN AX,60H</b>

72、</p><p><b>  PUSHF;</b></p><p>  CALL DWORD PTR DS:[0] ;調(diào)用系統(tǒng)提 供的中斷處理程序</p><p>  POP DS:[2] </p><p>  POP DS:[0]</p><p>  CMP AX,KEY_ESC </p

73、><p><b>  JNE KEY1</b></p><p><b>  JMP STOP </b></p><p>  KEY1:CMP AX,UP</p><p><b>  JNE KEY2</b></p><p>  MOV BX,DELAY_TI

74、ME </p><p>  ADD BX,STEP</p><p>  MOV DELAY_TIME,BX</p><p>  MOV DX,OFFSET MESS ;顯示字符串</p><p><b>  MOV AH,09</b></p><p><b>  INT 21H <

75、/b></p><p><b>  JMP INT9R</b></p><p>  KEY2:CMP AX,DOWN </p><p><b>  JNE INT9R</b></p><p>  MOV BX,DELAY_TIME </p><p>  SUB BX,S

76、TEP</p><p>  MOV DELAY_TIME,BX </p><p>  INT9R:MOV DX,0</p><p>  MOV DX,OFFSET MESS ;顯示字符串</p><p><b>  MOV AH,09</b></p><p><b>  INT 21H&

77、lt;/b></p><p>  MOV AH,1 ;1=讀鍵盤緩沖區(qū)字節(jié),0=從 鍵盤讀字符;;</p><p><b>  INT 16H </b></p><p><b>  JZL1 </b></p><p>  L1: POP DX </p><p>

78、<b>  POP ES </b></p><p><b>  POP BX </b></p><p><b>  POP AX </b></p><p><b>  IRET</b></p><p>  INT9 ENDP </p><

79、;p><b>  CODEENDS</b></p><p><b>  END START</b></p><p>  膂芄袁羀芁莇蚄袆芀葿衿螂艿薁螞膁羋莁蒅肇芇蒃螀羃芇薅薃衿芆芅蝿螅芅莇薁肅莄蒀螇罿莃薂薀裊莂節(jié)螅螁莁蒄薈膀莁薆襖肆莀蠆蚆羂荿莈袂袈羅蒁蚅螄肄薃袀肂肄芃蚃羈肅蒞袈襖肂薇蟻袀肁蠆薄腿肀荿螀肅聿蒁薂羈肈薄螈袇膈芃薁螃膇莆螆肂膆蒈

80、蕿肈膅蝕螄羄膄莀蚇袀膃蒂袃螆膃薅蚆肄膂芄袁羀芁莇蚄袆芀葿衿螂艿薁螞膁羋莁蒅肇芇蒃螀羃芇薅薃衿芆芅蝿螅芅莇薁肅莄蒀螇罿莃薂薀裊莂節(jié)螅螁莁蒄薈膀莁薆襖肆莀蠆蚆羂荿莈袂袈羅蒁蚅螄肄薃袀肂肄芃蚃羈肅蒞袈襖肂薇蟻袀肁蠆薄腿肀荿螀肅聿蒁薂羈肈薄螈袇膈芃薁螃膇莆螆肂膆蒈蕿肈膅蝕螄羄膄莀蚇袀膃蒂袃螆膃薅蚆肄膂芄袁羀芁莇蚄袆芀葿衿螂艿薁螞膁羋莁蒅肇芇蒃螀羃芇薅薃衿芆芅蝿螅芅莇薁肅莄蒀螇罿莃薂薀裊莂節(jié)螅螁莁蒄薈膀莁薆襖肆莀蠆蚆羂荿莈袂袈羅蒁蚅螄肄薃袀肂肄芃

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲(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)論