微機(jī)原理實(shí)驗(yàn)分解_第1頁(yè)
微機(jī)原理實(shí)驗(yàn)分解_第2頁(yè)
微機(jī)原理實(shí)驗(yàn)分解_第3頁(yè)
微機(jī)原理實(shí)驗(yàn)分解_第4頁(yè)
微機(jī)原理實(shí)驗(yàn)分解_第5頁(yè)
已閱讀5頁(yè),還剩14頁(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、實(shí)驗(yàn) 1-3 匯編語(yǔ)言實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康氖煜R編語(yǔ)言語(yǔ)法熟悉 8086 常用指令掌握 BIOS 中斷調(diào)用及 DOS 功能調(diào)用二、實(shí)驗(yàn)內(nèi)容1、編寫一個(gè)匯編語(yǔ)言程序,要求從鍵盤輸入一個(gè)小寫字母,將其轉(zhuǎn)化成大寫字母 并在屏幕上顯示出來(lái)。2、編寫一個(gè)匯編語(yǔ)言程序, 將字符串 “ Assembly Language Programmin全g 部”轉(zhuǎn)化為 大寫字母,存放到原來(lái)所在單元。3、從鍵盤接收一串字符,并另起一行逆序顯示該字符串。三、實(shí)驗(yàn)步驟1. 題目 1 的完整匯編語(yǔ)言程序如下,在實(shí)驗(yàn)環(huán)境中保存文件進(jìn)行編譯連接后,在 DOS中運(yùn)行文件,可實(shí)現(xiàn)將輸入字母轉(zhuǎn)換成小寫輸出。DATA SEGMENT ;定義

2、數(shù)據(jù)段BUF DB 0DH,0AH,'PLEASE INPUT A CHAR:$'DATA ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK ;段寄存器指派偽指令BEGIN:MOV AX,DATAMOV DS,AX;初始化 DSLEA DX,BUF;偏移地址送寄存器MOV AH,9MOV AH,1INT 21H ;號(hào)調(diào)用顯示字符串 PLEASE INPUT A CHAR :;號(hào)調(diào)用,從鍵盤接收一個(gè)字符CMP AL,61H;若比“”小轉(zhuǎn) PEND 處執(zhí)行INT 21HJB PENDCMP AL,7AH;若比“ z大”轉(zhuǎn) PENDJA

3、PENDSUB AL,20H;若在 “a和”“z之”間,則減去 20 變?yōu)榇髮懽帜窶OV DL,AL;轉(zhuǎn)換后的字符存入 DL 寄存器MOV AH,2;2 號(hào)功能調(diào)用顯示一個(gè)字符INT 21HMOV AH,4CH;程序結(jié)束,返回 DOSPEND:INT 21HCODE ENDSEND BEGIN2. 題目 2 的完整匯編語(yǔ)言程序如下,運(yùn)行可執(zhí)行文件后將字符串“AssemblyLanguage Programming”轉(zhuǎn)換成大寫 “ ASSEMBLY LANGUAGE PROGRAMMI”NG 并顯 示。DATA SEGMENT;定義數(shù)據(jù)段BUF DB 0DH,0AH,'Assembly

4、Language Programming$'N DB $-BUFDATA ENDSCODE SEGMENTASSUME DS:DATA,CS:CODEBEGIN:;字符串長(zhǎng)度;定義代碼段;段寄存器指派偽指令MOV AX,DATAMOV DS,AX LEA DX,BUF;數(shù)據(jù)初始化MOV AH,9; 9 號(hào)調(diào)用顯示字符串 Assembly language ProgrammingINT 21HMOV CX,NMOV SI,DX;設(shè)置循環(huán)計(jì)數(shù)值MOV AL,SICMP AL,61HJB NEXT;若比 “”小轉(zhuǎn) NEXTCMP AL,7AHJA NEXT;若比“ z大”轉(zhuǎn) NEXTSUB

5、AL,20HMOV SI,AL;若在“a和”“z之”間,則減去 20 變?yōu)榇髮懽帜窷EXT:INC SILOOP L;循環(huán)DISPLAY:LEA DX,BUFMOV AH,9;9 號(hào)調(diào)用顯示字符串INT 21HEXIT:MOV AH,4CH;程序結(jié)束,返回 DOSINT 21HCODE ENDSEND BEGIN3. 題目 2的完整匯編語(yǔ)言程序如下, DOC 中運(yùn)行文件,從鍵盤輸入任意一字符串, 并回車鍵結(jié)束輸入,在下一行便可逆序顯示所輸入的字符串。DATA SEGMENTSTR1 DB 0DH,0AH, 'PLEASE INPUT A STRING:$'BUF DB 512

6、DUP(?);定義可輸入的字符個(gè)數(shù)CRLF DB 0DH,0AH,24HDATA ENDS;回車換行符CODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXLEA DX,STR1MOV AH,9INT 21HMOV SI,OFFSET BUFAGAIN:MOV AH,01INT 21HCMP AL,0DHJE DISPDEC SIMOV SI,ALJMP AGAIN;定位待顯示字符串首地址;程序結(jié)束, DOS 返回;偏移地址送到寄存器 ;9 號(hào)調(diào)用顯示字符串;指針指向待顯示字符串尾部;輸入字符;是回車嗎;是 ,轉(zhuǎn)顯示指針減 1

7、 存入輸入的字符;繼續(xù)輸入DISP:MOV AH,09 ;顯示MOV DX,OFFSET CRLF ;回車換行INT 21HMOV DX,SIMOV AH,09 INT 21HMOV AH,4CHINT 21H CODE ENDS END START四、程序框圖實(shí)驗(yàn)內(nèi)容中的 1、2、3題程序框圖見(jiàn)如下圖 1-1、1-2和 1-3SI指向的字符寫字母SI小寫字母 ASCII 碼值轉(zhuǎn)化為大寫字母 ASCII 碼值存入寄存器示小寫字母 ASCII 碼值轉(zhuǎn)化為大 ASCII 碼值存入緩沖區(qū)開(kāi)始INT 21H 的 9號(hào)功能顯示提示字符串化SI 加1指向下一存儲(chǔ)單元Y 顯示圖 1-1結(jié)束圖 1-2開(kāi)始數(shù)據(jù)

8、初始化INT 21H 的 9號(hào)功能顯示提示字符串輸入字符否是SI指針存圖 1-3五、實(shí)驗(yàn)總結(jié)DOS 調(diào)用,運(yùn)行程序文件,得到結(jié)果圖分別如下所示:圖 1-4圖 1-5圖 1-6通過(guò)實(shí)驗(yàn),我熟悉了匯編語(yǔ)言程序的基本結(jié)構(gòu),掌握了教程中講解的跳轉(zhuǎn)類指令以 及循環(huán)指令等,對(duì) DOS 功能的調(diào)用更加熟悉。英文字母的編碼是按 ASSIC 碼表的順序 編碼的,大寫 “A”到“Z”和小寫“a到”“z之”間的轉(zhuǎn)換,其 ASSIC 碼值正好相差 20H。實(shí)驗(yàn)四8259A 中斷實(shí)驗(yàn)一、實(shí)驗(yàn)要求掌握用 8088/86控制 8259 可編程中斷控制器,實(shí)現(xiàn)對(duì)外部中斷的響應(yīng)和處理二、實(shí)驗(yàn)?zāi)康牧私?8088/86與 8259

9、之間的連接方法。學(xué)習(xí) 8088/86對(duì) 8259的控制方法。三、預(yù)備知識(shí)8259A 是 Intel 公司專為控制優(yōu)先級(jí)中斷而設(shè)計(jì)的 NMOS 芯片。它集中斷源優(yōu)先級(jí) 排隊(duì)、中斷源識(shí)別、中斷向量提供和中斷屏蔽等功能電路于一體,因而中斷系統(tǒng)無(wú)需附 任何電路,只需對(duì) 8259A 進(jìn)行編程,就可管理 8 級(jí)優(yōu)先中斷,且中斷請(qǐng)求方式和優(yōu)先級(jí) 模式等中斷結(jié)構(gòu)可通過(guò)編程設(shè)定或變更,中斷入口地址也可由用戶任意指定。四、實(shí)驗(yàn)原理說(shuō)明及連線1、本實(shí)驗(yàn)主要用到的模塊:中斷模塊、單次脈沖源模塊等;2、IR6 接單次脈沖的 /Q 端D110D29D38D47D56D65D74INTR17INTA2620H1IIOR3I

10、IOW2A027D0 11D0IR0D1IR1D2IR2D3IR3D4IR4D5IR5D6IR6D7IR7INTU02SP/ENINTA8259CSRDCAS0WRCAS1A0CAS218 IRQ019 IRQ120 IRQ221 IRQ322 IRQ4232425165K121315圖 4-1IR5J06IR6J07IR7J08VCCR02五、實(shí)驗(yàn)內(nèi)容用單脈沖發(fā)生器的輸出脈沖作為中斷源,每按一次按鍵產(chǎn)生一次中斷申請(qǐng),中斷服務(wù)程序?qū)⒃趯?shí)驗(yàn)箱的顯示屏顯示一個(gè)字符 “R”。六、程序框圖主程序框圖見(jiàn)圖 4-2,中斷程序框圖見(jiàn)圖 4-3。開(kāi)始圖 4-3圖 4-2七、實(shí)驗(yàn)步驟1、確認(rèn)連接好線路;2、編寫

11、程序3、裝載并運(yùn)行程序(脫機(jī)時(shí)調(diào)用 ZY2TJ.EXE,聯(lián)機(jī)時(shí)調(diào)用 ZY2.EXE )匯編語(yǔ)言程序如下:DATA SEGMENT;數(shù)據(jù)段的定義INT_SEG DW ?INT_OFF DW ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:CLIMOV AH,35HMOV AL,0EHINT 21HMOV INT_OFF,BXMOV INT_SEG,ESMOV AX,CSADD AX,10HMOV DS,AXMOV DX,OFFSET UINTRMOV AH,25HMOV AL,0EHINT 21HIN AL,21HAND AL,0BFHMOV

12、DX,21H;關(guān)中斷;讀原中斷服務(wù)程序的入口地址;保存原中斷服務(wù)程序的入口偏移地址;使數(shù)據(jù)和代碼處于同一段;取中斷服務(wù)程序地址;設(shè)置中斷向量;送中斷類型碼;讀 8259A 中斷屏蔽寄存器OUT DX,ALSTIMM:JMP MMUINTR:CLI ;中斷服務(wù)程序MOV AL,'R'MOV DX,88HOUT DX,ALMOV AL,20H ;向 8259A 發(fā)出 EOI 命令,結(jié)束中斷OUT 20H,ALIRETCODE ENDSEND START八、實(shí)驗(yàn)總結(jié)8259A 控制器芯片可實(shí)現(xiàn)對(duì)中斷的控制, 對(duì) 8259A 進(jìn)行初始化編程后即可處理中斷 請(qǐng)求,CPU 也可以通過(guò)操作命

13、令字實(shí)現(xiàn)對(duì) 8259A 的操作控制。 用單脈沖發(fā)生器的輸出脈 沖作為中斷源,向 CPU 發(fā)送中斷請(qǐng)求,每按一次按鍵產(chǎn)生一次中斷申請(qǐng),通過(guò)控制器 使 CPU 執(zhí)行中斷服務(wù)程序,中斷服務(wù)程序的結(jié)果將在實(shí)驗(yàn)箱的顯示屏顯示一個(gè)字符 “R”。實(shí)驗(yàn)五 8255 并行 I/O 口實(shí)驗(yàn)一、實(shí)驗(yàn)要求利用 8255 可編程并行口芯片,實(shí)現(xiàn)輸入 /輸出實(shí)驗(yàn),實(shí)驗(yàn)中用 8255PA 口作輸入, PB 口作輸出。二、實(shí)驗(yàn)?zāi)康?、了解 8255 芯片結(jié)構(gòu)及編程方法。2、了解 8255 輸入/輸出實(shí)驗(yàn)方法。三、預(yù)備知識(shí)8255是Intel公司生產(chǎn)的與 Intel8080/8085系列的 MPU配套的可編程外圍接口電路, 簡(jiǎn)

14、稱 PPI。它有 A、B、C三個(gè)八位端口寄存器,通過(guò) 24 位端口線與外部設(shè)備相連,基 中 C 口可分為上半部和下半部。這 24 根端口線全部為雙向三態(tài)。三個(gè)端口可分二組來(lái) 使用,可分別工作于三種不同的工作方式。四、實(shí)驗(yàn)原理圖及連線1、本實(shí)驗(yàn)主要用到的模塊: 8255模塊、開(kāi)關(guān)量輸出模塊、 01 指示模塊、實(shí)驗(yàn)譯 碼單元等;2、PA0-PA7分別接開(kāi)關(guān)量輸出模塊 S0-S7 對(duì)應(yīng)的插座;3、PB0-PB7分別接 01指示模塊 DO71-DO78 對(duì)應(yīng)的插座;4、8255A 的片選 /CS接地址譯碼單元的 2A0-2A7 ;5、數(shù)據(jù)線 XD0 XD7 接系統(tǒng)數(shù)據(jù)線區(qū)的任一插座。圖 5-1五、實(shí)驗(yàn)

15、內(nèi)容將實(shí)驗(yàn)的線路連接好后,編程,將 8255的 A 口作為輸入,輸入信號(hào)由 8個(gè)邏輯電 平開(kāi)關(guān)提供, B 口作為輸出,其內(nèi)容由發(fā)光二極管來(lái)顯示。匯編語(yǔ)言程序如下:DATA SEGMENTDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AL,90HMOV DX,2A3HOUT DX,ALA: MOV DX,2A0HIN AL,DXMOV DX,2A1HOUT DX,ALJMP ACODE ENDSEND START六、程序框圖;定義 A 端口為輸入;設(shè)置 8255A 的控制口地址 ;寫控制字;將 PA端口地址送到 DX 中 ;從 PA 口輸入數(shù)據(jù);將 PB端口地址送到 DX 中;PB 口輸出數(shù)據(jù)圖 5-2七、實(shí)驗(yàn)步驟1、參照四中的內(nèi)容連好線;2、運(yùn)行上位機(jī)軟件,裝載并運(yùn)行相應(yīng)程序即可(聯(lián)機(jī)調(diào)用ZY1LJ.EXE ,脫機(jī)用ZY1.EXE )。編寫程序時(shí), 8255 的/CS連線可以

溫馨提示

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

評(píng)論

0/150

提交評(píng)論