




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、浙江師范大學(xué)數(shù)理與信息工程學(xué)院 實驗指導(dǎo)書(試行版)浙江師范大學(xué)計算機系2014-11-16實驗一 Debug命令的使用一、實驗?zāi)康?理解并掌握Debug各項命令的使用方法。2掌握匯編語言的工作原理。二、實驗內(nèi)容使用匯編語言,將內(nèi)存單元(如偏移地址50)中的字符串“ABCDE”,移動到內(nèi)存的另外一個偏移地址(如100)中。寫出各個步驟執(zhí)行后的具體內(nèi)容。三、實驗步驟1、使用debug命令,進入debug環(huán)境;2、使用R命令,修改DS和ES分別為2000和3000;3、使用D命令查看內(nèi)存中源數(shù)據(jù)區(qū)和目標(biāo)數(shù)據(jù)區(qū)的內(nèi)容;4、使用E命令初始化源數(shù)據(jù)區(qū),如:E ds:50 ABCDE f3 8D 125、
2、使用D命令檢查源數(shù)據(jù)區(qū)和目的數(shù)據(jù)區(qū);6、使用A命令輸入程序:7、使用T命令單步跟蹤執(zhí)行程序。8、使用D命令,檢查執(zhí)行后源數(shù)據(jù)區(qū)和目標(biāo)數(shù)據(jù)區(qū)內(nèi)容。四、實驗程序MOV SI, 0050H ; (DS)=2000H MOV DI, 0100H ; (ES)=3000H MOV CX, 5 CLD REP MOVSB實驗二 清零程序一、實驗?zāi)康恼莆諈R編語言設(shè)計和調(diào)試方法,熟悉鍵盤操作。二、實驗內(nèi)容把2000H-20FFH的內(nèi)容清零。三、程序框圖開 始緩沖區(qū)首地址2000HBX字節(jié)數(shù)80HCXAX清零AXBXBX+2BXCX-1CXCX=0?結(jié) 束四、實驗步驟
3、0;用連續(xù)或單步方式運行程序,檢查2000-20FFH中執(zhí)行程序前后的內(nèi)容變化。五、思考假使把2000H-20FFH中的內(nèi)容改成FFH,如何修改程序。六、實驗程序 CODE SEGMENT ASSUME CS:CODE, DS:CODE, ES:CODE ORG 800H S1: MOV BX, 2000H MOV AX, 0000H MOV CX, 0080H L1: MOV BX, AX INC BX INC BX LOOP L1 JMP $CODE ENDS END S1實驗三 拆字程序一、實驗?zāi)康?掌握匯編語言設(shè)計和調(diào)試方法。二、實驗內(nèi)容把2000H的內(nèi)容拆開,高位送2001H低位,低
4、位送2002H低位,2001H、2002H高位清零,一般本程序用于把數(shù)據(jù)送顯示緩沖區(qū)時用。三、程序框圖四、實驗步驟用連續(xù)或單步方式運行程序,檢查20002002H中內(nèi)容變化情況。五、思考如何用斷點方式調(diào)試本程序。六、實驗程序 CODE SEGMENT ASSUME CS:CODE, DS:CODE, ES:CODE ORG 1020H S2: MOV BX, 2000H MOV AL, BX MOV AH, AL MOV CL, 4 SHR AH, CL INC BX MOV BX, AH AND AL, 0FH INC BX MOV BX, AL JMP $ CODE ENDS END S2
5、實驗四 拼字程序一、實驗?zāi)康倪M步掌握匯編語言設(shè)計和調(diào)試方法二、實驗內(nèi)容把2000H、2001H的低位分別送入2002H高低位,一般本程序用于把顯示緩沖區(qū)的數(shù)據(jù)取出拼裝成個字節(jié)。三、程序框圖四、實驗步驟單步或用斷點方式運行程序,檢查2002H內(nèi)容變化情況。五、實驗程序 CODE SEGMENT ASSUME CS: CODE, DS:CODE, ES:CODE ORG 1040HS3: MOV BX, 2000HMOV AX, BXAND AL, 0FHMOV CL, 4AND AH,0FHOR AL, AHADD BX, 2MOV BX, ALJMP $ CODE ENDS END S3實驗五
6、 8255控制交通燈一、實驗?zāi)康倪M一步了解8255芯片的結(jié)構(gòu)及編程方法,學(xué)習(xí)模擬交通控制的實現(xiàn)方法。二、實驗內(nèi)容用8255作輸出口,控制十二個發(fā)光二極管燃滅,模擬交通燈管理。三、程序框圖四、實驗電路 五、實驗步驟 8255PA0-PA7 PB0-PB3接發(fā)光二極管L12-L5、L4-L1。 執(zhí)行程序,初始狀態(tài)為四個路口的紅燈全亮之后,東西路口的綠燈亮,南北路口的紅燈亮,東西路口方向通車,延時一段時間后東西路口的綠燈熄滅,黃燈開始閃爍,閃爍若干次后,東西路口紅燈亮,而同時南北路口的綠燈亮,南北路口方向開始通車,延時一段時間后,南北路口的綠燈熄滅,黃燈開始閃爍,閃爍若干次后,再切換到
7、東西路口方向,之后重復(fù)以上過程。六、實驗程序 PA EQU 0FFD8H PB EQU 0FFD9H PC EQU 0FFDAH PCTL EQU 0FFDBH CODE SEGMENT ASSUME CS:CODE, DS:CODE, ES:CODE ORG 32F0H H3: MOV AL, 88H MOV DX, PCTL OUT DX, ALMOV DX, PA MOV AL, 0B6HOUT DX, ALINC DXMOV AL, 0DHOUT DX, ALCALL DELAY1P30: MOV AL, 75H MOV DX, PA OUT DX, AL INC DX MOV AL,
8、 0DH OUT DX, AL CALL DELAY1 CALL DELAY1 MOV CX, 08HP31: MOV DX, PA MOV AL, 0F3H OUT DX, AL INC DX MOV AL, 0CH OUT DX, AL CALL DELAY2 MOV DX, PA MOV AL, 0F7H OUT DX, AL INC DX MOV AL, 0DH OUT DX, AL CALL DELAY2 LOOP P31 MOV DX, PA MOV AL, 0AEH OUT DX, ALINC DXMOV AL, 08HOUT DX, ALCALL DELAY1CALL DELA
9、Y1MOV CX, 08HP32: MOV DX, PA MOV AL, 9EH OUT DX, AL INC DX MOV AL, 07H OUT DX, AL CALL DELAY2 MOV DX, PA MOV AL, 0BEH OUT DX, AL INC DX MOV AL, 0FH OUT DX, AL CALL DELAY2 LOOP P32 JMP P30DELAY1: PUSH AX PUSH CX MOV CX, 0030HDELY2: CALL DELAY2 LOOP DELY2 POP CX POP AX RETDELAY2: PUSH CX MOV CX, 8000H
10、 LOOP S POP CX RETCODE ENDS END H3實驗六 簡單I/O口擴展一、實驗?zāi)康?1)學(xué)習(xí)單片機系統(tǒng)中擴展簡單I/O口的方法。(2)學(xué)習(xí)數(shù)據(jù)輸入輸出程序的編制方法。二、實驗內(nèi)容利用74LS244作為輸入口,讀取開關(guān)狀態(tài),并將此狀態(tài),通過74LS273再驅(qū)動發(fā)光二極管顯示出來。三、程序框圖 四、實驗電路五、實驗步驟編譯、裝載,連續(xù)運行程序,撥動K1-K8,觀察L1-L8是否對應(yīng)點亮。六、思考可否用273輸入,244作輸出。 七、實驗程序PIO1 EQU 0FFE0HPIO2 EQU 0FFE4HCODE SEGMENT ASSUME CS: CODE, DS:CODE,
11、ES:CODE ORG 3380H ;273,244P4: MOV DX, PIO1 IN AL, DX MOV DX, PIO2 OUT DX, AL JMP P4CODE ENDS END P4實驗七 A/D轉(zhuǎn)換一、實驗?zāi)康牧私饽?數(shù)轉(zhuǎn)換基本原理,掌握ADC0809的使用方法。二、實驗內(nèi)容 利用實驗系統(tǒng)上的0809作為A/D轉(zhuǎn)換器,實驗系統(tǒng)的電位器提供模擬量輸入,編制程序,將模擬量轉(zhuǎn)換成數(shù)字,通過數(shù)友管顯示出來。開 始啟動手0809進行本次A/D調(diào)用顯示等待A/D轉(zhuǎn)換結(jié)束讀取A/D轉(zhuǎn)換結(jié)果將結(jié)果送顯示緩沖區(qū)三、程序框圖 四、實驗電路五、實驗步驟編譯、裝載,連續(xù)運行程
12、序,LED顯示器右邊二位顯示當(dāng)前采集的電壓值轉(zhuǎn)換后的數(shù)字量,調(diào)節(jié)W1,LED的內(nèi)容光煥發(fā)將隨著電壓變化而相應(yīng)變化,以十六進制方式顯示A/D轉(zhuǎn)換值。六、實驗程序 ADPORT EQU 0FFE0H ZXK EQU 0FFDCH ZWK EQU 0FFDDH CODE SEGMENT ASSUME CS:CODE, DS:CODE, ES:CODE ORG 3390H H5: JMP START LED DB 0COH, OF9H,0A4H, 0B0H, 99H, 92H,82H,0F8H, 80H,90H DB 88H, 83H, 0C6H, 0A1H,86H,8EH,0FFH, 0CH,0DE
13、H, 0F3H BUF DB ?,?,?,?,?,? START: MOV BUF, 00H ;DISPLAY 0808 00 MOV BUF+1,08H MOV BUF+2,00H MOV BUF+3,09H ;DISPLAY 0809 00 MOV BUF+4,00H MOV BUF+5,00HP5: MOV AL, 00H ;IN0 MOV DX, ADPORT OUT DX, AL CALL DIS MOV DX, ADPORT IN AL, DX MOV DX, 0FFE4H ;NEW ADD-> 138 Y1 NOT AL ;NEW ADD OUT DX,AL ;NEW AD
14、D->驅(qū)動發(fā)光二極管 NOT AL ;NEW ADD CALL ADS JMP P5 ADS: MOV AH, AL AND AL, 0FH MOV BUF+5, AL AND AH, 0F0H MOV CL, 4 SHR AH, CL MOV BUF+4, AH RET;- DIS: MOV CL, 20H MOV BX, OFFSET BUF DIS1: MOV AL,BX PUSH BX MOV BX, OFFSET LED XLAT POP BX MOV DX, ZXK OUT DX, AL MOV AL, CL MOV DX, ZWK OUT DX, AL PUSH CX MO
15、V CX, 0100H DELAY: LOOP $ POP CX CMP CL, 01H JZ EXIT INC BX SHR CL, 1 JMP DIS1 EXIT: MOV AL, 00H MOV DX, ZWK OUT DX, AL RET:- CODE ENDS END H5實驗八 8259中斷控制器實驗一、實驗?zāi)康恼莆?259中斷控制器的接口方法與程序設(shè)計二、實驗內(nèi)容編制程序,利用8259芯片的IR7作為中斷源,產(chǎn)生單一中斷,系統(tǒng)顯示“7”。三、程序流程 N中斷返回關(guān)中斷刷新緩沖區(qū)寫“7”次斷加1顯示“p”開 始判中斷次數(shù)滿7次后YIR7中斷服務(wù)程序關(guān)中斷初始化顯示緩沖區(qū)、8259開
16、中斷調(diào)用顯示子程序開 始四、實驗電路五、編程提示8259中斷控制器是專為控制優(yōu)先中斷設(shè)計的芯片。它將中斷源優(yōu)先級排隊,辨別中斷源以及提供中斷矢量的電路集于一片中。因此無需附加任何電路,只需8259進行編程,就可以管理8級中斷,并選擇優(yōu)先優(yōu)行模式和中斷請求方式,即中斷結(jié)構(gòu)可以由用戶編程來設(shè)定。同時在不需要的增加其它電路的情況下,通過多片8259的級聯(lián),能夠成多達(dá)64級的矢量中斷系統(tǒng)。中斷序號01234567 變量地址2023h2427h282Bh2C2Fh3033h3437h383Bh3C3Fh本實驗中使用7號中斷源IR7,中斷方式為邊沿觸發(fā)方式,按動AN按鈕產(chǎn)生一次中斷,編寫程序,使系統(tǒng)每次響
17、應(yīng)外部中斷IR7時,顯示1個字符“7”,顯示滿以后清空顯示“P.”繼續(xù)等待中斷。六、實驗連線Dais系列實驗箱連線 Dais-958PT+系列實驗箱連線實驗 七、實驗步驟編譯、裝載,連續(xù)運行程序,按AN按鈕,LED數(shù)碼管從最高位開始依次顯示“7”,顯示滿后,最高位顯示“P.”繼續(xù)等待中斷。 八、試驗程序ZXK EQU 0FFDCHZWK EQU 0FFDDHPORT0 EQU 0FFE0HPORT1 EQU 0FFE1HCODE SEGMENT ASSUME CS:CODE,DS:CODE,ES:CODE ORG 3400HH8:JMP P8259LED DB 0C0H,0F9H,0A4H,0
18、B0H,99H,92H,82H,0F8H,80H,90H DB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,0DEH,0E3HBUF DB ?,?,?,?,?,?P8259: CLI CALL WP MOV AX,OFFSET INT8259 MOV BX,003CH MOV BX,AX MOV BX,003EH MOV AX,0000H MOV BX,AX MOV FOR8259 MOV si,0000h STICON8: CALL DIS JMP CON8;-INT 8259:cli MOV BX,OFFSET BUF MOV BUYTE PTR BX+SI,07
19、H INC SI CMP SI, 0007H JZ X59XX59: MOV AL, 20H MOV DX, Port0 OUT DX, AL MOV CX, 0050HXXX59: PUSH CX Ca LL DIS POP CX LOOP XXX59 POP CX MOV CX, 3438h Push CX STI TRETX59: MOV ST, 000H CALL WP JMP XX59;= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =FOR8259: MOV AL, 13H MOV DX
20、, Port0 OUT DX, AL MOV AL 08H OUT DX, Portl MOV AL, 09H OUT DX, AL MOV AL, 7FH ;IRQ7 OUT DX, AL RET;-WP: MOV BUF, 11H ;初始化顯示“9” MOV BUF+1, 10H MOV BUF+2, 10H MOV BUF+3, 10H MOV BUF+4 10H MOV BUF+5 10H RET;-DIS: MOV CL, 20H MOV BX, OFFSET BUFDIS: MOV AL, BX PUSH BX MOV BX, OFFSET LED XLAT POP BX MOV
21、DX, ZXK OUT DX, AL MOV AL, CL MOV DX, ZWK OUT DX, AL PUSH CX MOV CX, 0100HDELAY: LOOP $ POP CX CMP CL, 01H JZ EXIT INC BX SHR CL, 1 JMP DIS1EXIT : MOV AL, 00H MOV DX, ZWK OUT DX, AL RET;-CODE ENDS END H8附錄:Debug主要命令DEBUG是一個DOS實用程序,是供程序員使用的程序調(diào)試工具,可以用它檢查內(nèi)存中任何地方的字節(jié)以及修改任何地方的字節(jié)。它可以用于逐指令執(zhí)行某個程序以驗證程序運行的正確性,
22、也可以追蹤執(zhí)行過程、比較一個指令執(zhí)行前后的值以及比較與移動內(nèi)存中數(shù)據(jù)的范圍,讀寫文件與磁盤扇區(qū)。DEBUG的命令及功能如下:l 顯示內(nèi)存內(nèi)容格式:D 地址 或D 起始地址 目的地址 功能: 以內(nèi)存映象方式顯示內(nèi)存中的信息。說明: 轉(zhuǎn)儲用左右兩部分顯示內(nèi)存映象內(nèi)容,左邊以十六進制,右邊以ASC字符顯示,所有不可打印字符用句號(。)表示。每行顯示16個字節(jié)的內(nèi)容,在第八和第九個字節(jié)之間有一個連字符 - 此命令隱含的段地址為DS的值。若未指定起始地址,則D命令從顯示的最后一個單元的下一個單元開始顯示,若以前沒有使用給D命令, 則從初使化的段寄存器的內(nèi)容,加上地址偏移量 0100H
23、 開始顯示。例:-d10,4f即為顯示DS:4f的內(nèi)容在D命令中如不指出段地址,則其默認(rèn)為DS段。l 修改內(nèi)存命令 格式:E起始地址數(shù)據(jù)行功能:用給定內(nèi)容從指定的地址開始修改內(nèi)存值。例:-E100 41 42 43 44 48 47 46 45-D 100, 10808F1:0100 41 42 43 44 48 47 46 45 ABCDHGFE格式:F地址范圍 字節(jié)或字節(jié)串 填寫命令功能: 將要填寫的字節(jié)或字節(jié)串填入由地址范圍指定的存儲器中。如:-F 100 105 "MSDOS"-d 100 l0fl 退出命令格式:Ql 寄存器命令格式:R 寄存器 功能: 一、顯示單
24、個寄存器的內(nèi)容,并提供修改功能;二、顯示所有寄存器內(nèi)容, 再加上字母標(biāo)志位狀態(tài)以及要執(zhí)行的下一條指令;三、顯示8個標(biāo)志位狀態(tài), 并提供修改功能。若不想改變則回車即可。例:-r bxbx 0050:51-rAX=0000 BX=0051 CX=0000 SP=FFEE BP=0000 SI=0000 DI=0000DS=0003 ES=0CD3 SS=0CD3 IP=0100 NV UP EI PL NZ NA PO NC0CD3:0100 0F DB OF若想改變標(biāo)志寄存器,用-RF回車,則DEBUG會將標(biāo)志內(nèi)容顯示出來,若想改變?nèi)我粯?biāo)志,只要輸入該標(biāo)志的名稱即可。標(biāo)志名稱 設(shè)置 未設(shè)置 標(biāo)志
25、名稱 設(shè)置 未設(shè)置滋出 OV(溢出) NV(未溢出) 零位 ZR NZ(不等于零)方向 DN(減少) UP(增加) 輔助進位 AC NA(無進位)中斷 EI(許可) DI(禁止) 奇偶標(biāo)志 PE(偶) PO(奇)符號 NG(負(fù)) PL(正) 進位 CY NC(清除進位)例:-RfNV UP EI PL NZ NA PO NC :-OV DI 輸入值l 匯編命令格式:A 地址 功能: 將指令直接匯編成機器碼輸入到內(nèi)存中。說明: 用于小段程序的匯編及修改目標(biāo)程序,所有輸入的數(shù)字均采用十六進制, 用戶裝入內(nèi)存的匯編語句是連續(xù)存放的,若沒有指定地址,并且前面沒有使用匯編命令,該語句被匯編到 CS:01
26、00區(qū)域。例A:>DEBUG-a 010008F1:0100 MOV AH,0908F1:0102 MOV DX,10908F1:0105 l 反匯編命令格式:U 起始地址 或者 地址范圍功能: 將內(nèi)存中的內(nèi)容轉(zhuǎn)換為匯編語句。說明: 反匯編的字節(jié)數(shù)取決與用戶的系統(tǒng)顯示形式,以及在U命令中使用的可選項。從指定地址開始編譯,反匯編32個字節(jié)-U地址從CS:100開始,其反匯編32個字節(jié)如果地址被省略,則從一個U命令的最后一條指令的下一條單元開始匯編32個字節(jié)。對指定的存貯范圍進行反匯編-u起始地址 終止地址例:-U 100 10908F1:0100 CD20 INT 2008F1:0102
27、FF9F009A CALL FA12BX+9A0008F1:0106 F0 LOCK08F1:0107 FE1D CALL FAR DI08F1:0109 F0 LOCK說明:如指定了范圍則整個范圍全都會被反編譯l 匯編程序執(zhí)行命令格式:G起始地址 結(jié)束地址功能: 執(zhí)行正在調(diào)試的程序,當(dāng)達(dá)到斷點時停止執(zhí)行, 并且顯示寄存器標(biāo)志和下一條要執(zhí)行的命令。說明: 如果沒有指定起始地址,那么當(dāng)前指令地址由CS,IP寄存器的內(nèi)容來決定,如果用戶指定起始地址就從指定的起始地址開始執(zhí)行。如果指定斷點,當(dāng)指令到達(dá)指令地址時停止執(zhí)行,并顯示各寄存器標(biāo)志位的內(nèi)容和下一條要執(zhí)行的命令,最多允許用戶設(shè)定10個斷點。l 單步執(zhí)行命令格式: T=地址 指令條數(shù) 功能: 逐條跟蹤程序的執(zhí)行,每條指令執(zhí)行后都將顯示各寄存器的內(nèi)容。說明: 通常采用跟蹤一條指令,但用戶也可以用指令條數(shù)設(shè)定一次跟蹤多
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2019-2025年消防設(shè)施操作員之消防設(shè)備中級技能能力檢測試卷B卷附答案
- 2023年全國翻譯專業(yè)資格(水平)考試英語三級筆譯實務(wù)試題真題及答案
- 配電柜知識培訓(xùn)課件
- 卸妝膏護膚知識培訓(xùn)課件
- 小紅船讀后感
- 市場營銷策略制定服務(wù)協(xié)議
- 社區(qū)團購業(yè)務(wù)合作框架協(xié)議
- 工作日志與時間表安排表
- 河南省駐馬店市確山縣2024-2025學(xué)年七年級上學(xué)期期末生物學(xué)試題(含答案)
- 草原上的羊角球征文
- 小學(xué)生春耕教學(xué)課件
- 2024年南信語文數(shù)學(xué)試卷(含答案)
- 2025年個人投資合同電子版模板
- 車輛掛靠協(xié)議書
- 2025年湖南交通職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫1套
- 2017年公務(wù)員多省聯(lián)考《申論》真題(吉林甲級卷)及參考答案(含詳細(xì)解析)
- 一年級下冊健康成長教案
- 電力系統(tǒng)老化問題及其隱患解決方案研究報告發(fā)布
- 2025年江西建設(shè)職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試近5年??及鎱⒖碱}庫含答案解析
- 鹽酸安非他酮合成工藝優(yōu)化-洞察分析
- 2021年考研英語一真題
評論
0/150
提交評論