版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
資料內(nèi)容僅供您學(xué)習(xí)參考,如有不當(dāng)之處,請(qǐng)聯(lián)系改正或者刪除。實(shí)驗(yàn)一匯編語(yǔ)言環(huán)境一、實(shí)驗(yàn)時(shí)間:3月4日二、實(shí)驗(yàn)設(shè)備:硬件:計(jì)算機(jī)系統(tǒng)軟件:MS-DOS、DEBUG三、實(shí)驗(yàn)?zāi)康募耙? 本實(shí)驗(yàn)屬于指令操作類實(shí)驗(yàn),學(xué)生經(jīng)過(guò)DOS指令及DEBUG指令的操作進(jìn)行實(shí)驗(yàn)環(huán)境的熟悉,主要要求有如下幾點(diǎn):1、了解DOS的一般操作指令2、掌握DEBUG程序的基本參數(shù)的使用四、實(shí)驗(yàn)內(nèi)容:1、操作DOS的盤符之間的轉(zhuǎn)換及子目錄命令2、使用DEBUG命令:D,E,F,H,Q,R五、實(shí)驗(yàn)步驟:1、DOS常見(jiàn)命令練習(xí):1)練習(xí)在DOS的各個(gè)分區(qū)之間進(jìn)行切換:命令格式為盤符:如進(jìn)入D盤命令為D:2)練習(xí)在各個(gè)文件夾之間進(jìn)行切換: 2.1退回本盤符根目錄cd\ 2.2退回上層目錄cd.. 2.3進(jìn)入下層目錄cd(空格)目錄名3)練習(xí)使用功能鍵”F3” 輸入一行命令后,回車,如果需要重復(fù)輸入能夠按功能鍵F3,如果是前面幾行的命令能夠用方向鍵上下來(lái)調(diào)節(jié)。4)用命令COPYDEBUG.COMBUG復(fù)制一個(gè)文件。5)用命令RENAMEBUGBG將BUG文件改為BG。6)用命令DELBG將文件BG刪除。7)用命令DIR查找當(dāng)前目錄當(dāng)中的文件,并會(huì)使用/P及/W兩個(gè)參數(shù)。2、DEBUG命令使用:1)打DEBUG進(jìn)入DEBUG控制,顯示提示符'-'。2)用命令F10010F'A'將'A'的ASCII碼填入內(nèi)存。3)用命令D10010F觀察內(nèi)存中的16進(jìn)制碼及屏幕右邊的ASCII字符。4)用命令F11011F41重復(fù)上二項(xiàng)實(shí)驗(yàn),觀察結(jié)果并比較。5)用命令E100303132……3F將30H-3FH寫入地址為100開(kāi)始的內(nèi)存。單元中,再用D命令觀察結(jié)果,看鍵入的16進(jìn)制數(shù)是什么字符的ASCII碼?6)用H命令檢查下列各組16進(jìn)制數(shù)加減結(jié)果并和你的手算結(jié)果比較:-H3422會(huì)得出34與22的和與差(1)34H,22H (2)56H,78H (3)A5,79H (4)1284H,5678H (5)A758,347FH7)用R命令檢查各寄存器內(nèi)容,特別注意AX,BX,CX,DX,IP及標(biāo)志位中ZF,CF和AF的內(nèi)容。8)用R命令將AX,BX內(nèi)容改寫為1050H及23A8H。9)用Q命令來(lái)退出DEBUG狀態(tài),返回DOS界面。六、實(shí)驗(yàn)結(jié)果寫出步驟3、6、7的實(shí)驗(yàn)結(jié)果七、實(shí)驗(yàn)體會(huì)(主要談與DOS命令一般的WINDOWS命令不同之處并談?wù)動(dòng)肈EBUG看到的內(nèi)存空間的體會(huì))實(shí)驗(yàn)二匯編指令一、實(shí)驗(yàn)時(shí)間:3月11日二、實(shí)驗(yàn)設(shè)備:硬件:計(jì)算機(jī)系統(tǒng)軟件:MS-DOS、DEBUG、MS-MASM5.0三、實(shí)驗(yàn)?zāi)康募耙? 掌握MASM的操作步驟,能夠?qū)⒃闯绦蚓幾g成可執(zhí)行文件,同時(shí)進(jìn)一步熟悉DEBUG中命令并能用A來(lái)輸入簡(jiǎn)單的匯編指令。1、掌握DEBUG程序的基本參數(shù)的使用2、學(xué)會(huì)用MASM將匯編程序編譯鏈接成EXE文件3、學(xué)會(huì)用DEBUG將EXE文件裝入內(nèi)存當(dāng)中調(diào)試4、熟悉使用數(shù)據(jù)傳輸指令MOV四、實(shí)驗(yàn)內(nèi)容:1、將教師提供的源程序編譯并鏈接成可執(zhí)行文件。2、用DEBUG命令裝入該可執(zhí)行文件。3、用DEBUG命令的A、T、U命令來(lái)跟蹤調(diào)試該可執(zhí)行文件。4、掌握8086匯編指令:MOV,ADD,ADC,SUB,SBB,DAA,XCHG。5、掌握BCD碼,ASCII碼及用16進(jìn)制數(shù)表示二進(jìn)制碼的方法。6、學(xué)會(huì)查看8086寄存器:AX,BX,CX,DX,F,IP。五、實(shí)驗(yàn)步驟:1、加減法指令:1)用A命令在內(nèi)存100H處鍵入下列內(nèi)容:MOV AH,34MOV AL,22ADD AL,AHSUB AL,78MOV CX,1284MOV DX,5678ADD CX,DXSUB CX,AXSUB CX,CX2)用U命令檢查鍵入的程序及對(duì)應(yīng)的機(jī)器碼。3)用T命令逐條運(yùn)行這些指令,檢查并記錄有關(guān)寄存器及ZF情況。2、對(duì)源程序進(jìn)行匯編的過(guò)程1)用用文字編輯工具(記事本或EDIT)將源程序輸入下面的代碼,其擴(kuò)展名為.ASM。data segmentmessage db 'Thisisasampleprogramofkeyboardanddisply'db 0dh,0ah,'Pleasestrikethekey!',0dh,0ah,'$'data endsstack segment parastack'stack'db 50dup(?)stack endscode segmentassume cs:code,ds:data,ss:stackstart: mov ax,datamov ds,axmov dx,offsetmessagemov ah,9int 21hagain: mov ah,1int 21hcmp al,1bhje exitcmp al,61hjc ndcmp al,7ahja ndand al,11011111bnd: mov dl,almov ah,2int 21hjmp againexit: mov ah,4chint 21hcode endsend start2)用MASM對(duì)源文件進(jìn)行匯編,產(chǎn)生.OBJ文件和.LST文件。若匯編時(shí)提示有錯(cuò),用文字編輯工具修改源程序后重新匯編,直至經(jīng)過(guò)。3)用TYPE命令顯示1產(chǎn)生的.LST文件。4)用LINK將.OBJ文件連接成可執(zhí)行的.EXE文件。5)在DOS狀態(tài)下運(yùn)行LINK產(chǎn)生的.EXE文件。6)若未出現(xiàn)預(yù)期結(jié)果,用DEBUG(文件名).EXE檢查程序。六、實(shí)驗(yàn)結(jié)果16進(jìn)制數(shù)加減法手算結(jié)果及實(shí)驗(yàn)結(jié)果程序的運(yùn)行結(jié)果(即在屏幕上顯示標(biāo)題并提示你按鍵。每按一鍵在屏幕上顯示二個(gè)相同的字符,但小寫字母被改成大寫。按ESC鍵可返回DOS。)七、實(shí)驗(yàn)體會(huì)(匯編指令與普通的程序的指令有何不同)附:(不用在實(shí)驗(yàn)報(bào)告上面寫附的東西)DEBUG使用:1、打DEBUG進(jìn)入DEBUG,顯示提示符。2、退出DEBUG命令:Q3、顯示內(nèi)存命令:D起始地址結(jié)束地址4、修改內(nèi)存命令:E起始地址,連續(xù)修改打空格鍵。打回車鍵退出E命令。5、檢查寄存器命令:R標(biāo)志位顯示 1 0CF CY NCZF ZR NZSF NG PLAF AC NAOF OV NVPF PE PODF DN UPIF EI DI6、修改寄存器命令:R寄存器名7、小匯編命令:A起始地址,不輸入指令打回車鍵退出A命令。8、反匯編命令:U起始地址結(jié)束地址9、文件命名命令:N盤號(hào):文件名10、讀文件命令:L內(nèi)存地址11、寫文件命令:W內(nèi)存地址10、讀扇區(qū)命令:L內(nèi)存地址盤號(hào)(0--A:,1--B:)扇區(qū)號(hào)扇區(qū)數(shù)11、寫扇區(qū)命令:W內(nèi)存地址盤號(hào)扇區(qū)號(hào)扇區(qū)數(shù)12、運(yùn)行命令:G=起始地址結(jié)束(斷點(diǎn))地址13、單步命令:T=起始地址運(yùn)行指令數(shù),進(jìn)入子程序內(nèi)部。14、單步命令:P=起始地址運(yùn)行指令數(shù),不進(jìn)入子程序內(nèi)部。15、內(nèi)存搬家命令:M起始地址結(jié)束地址目的地址實(shí)驗(yàn)三順序程序設(shè)計(jì)一、實(shí)驗(yàn)時(shí)間:3月25,4月1日二、實(shí)驗(yàn)設(shè)備:硬件:計(jì)算機(jī)系統(tǒng)軟件:MS-DOS、DEBUG、MS-MASM5.0三、實(shí)驗(yàn)?zāi)康募耙?調(diào)試?yán)蠋熃o的一段代碼,并能分析、調(diào)試運(yùn)行;掌握順序程序的設(shè)計(jì),自己獨(dú)立設(shè)計(jì)一段代碼并運(yùn)行。四、實(shí)驗(yàn)內(nèi)容:1.仔細(xì)閱讀匯編語(yǔ)言教材相關(guān)內(nèi)容;2.熟練掌握DEBUG中的D、E、U、T命令;3.掌握在DEBUG中如何找到數(shù)據(jù)段段基址的方法;4.掌握單步跟蹤程序執(zhí)行的方法;5.掌握鍵盤輸入字符、顯示字符的系統(tǒng)調(diào)用使用方法:6.初步了解十進(jìn)制數(shù)字與其對(duì)應(yīng)的ASCIII碼之間的相互轉(zhuǎn)換方法;7.初步了解十六進(jìn)制數(shù)字與其對(duì)應(yīng)的ASCII碼之間的相互轉(zhuǎn)換方法。五、實(shí)驗(yàn)步驟:1)用用文字編輯工具(記事本或EDIT)將源程序輸入下面的代碼,其擴(kuò)展名為.ASM。 DSEG SEGMENT TAB1 DB 0,1,2,3,4,5,6,7,8,9 DB 7DUP(0)0AH,0BH,0CH,0DH,0EH,0FH SUM DB 0 DSEG ENDS DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG,DS:DSEG START: MOV AX,DSEG MOV DS,AX MOV BX,OFFSET TAB1 MOV AH,01H ;接受第一個(gè)數(shù)據(jù) INT 21H SUB AL,30H XLAT MOV DL,AL MOV AH,01H ;接受第二個(gè)數(shù)據(jù) INT 21H SUB AL,30H XLAT ;轉(zhuǎn)換為十六進(jìn)制數(shù) ADD AL,DL ;求兩數(shù)之和 XOR AH,AH MOV CH,10 DIV CH ;商為十位數(shù)字,余數(shù)為個(gè)位數(shù)字 ADD AL,30H ;將十位數(shù)字轉(zhuǎn)換為ASCII碼 MOV CH,AH ;保存?zhèn)€位數(shù)字 MOV DL,AL MOV AH,02H ;顯示十位數(shù)字 INT 21H MOV DL,CH ADD DL,30H ;將個(gè)位數(shù)字轉(zhuǎn)換為ASCII碼 MOV AH,02H ;顯示個(gè)位數(shù)字 INT 21H MOV AH,4CH INT 21H CSEG ENDS END START2)用MASM對(duì)源文件進(jìn)行匯編,產(chǎn)生.OBJ文件和.LST文件。若匯編時(shí)提示有錯(cuò),用文字編輯工具修改源程序后重新匯編,直至經(jīng)過(guò)。3)用LINK將.OBJ文件連接成可執(zhí)行的.EXE文件。4)在DOS狀態(tài)下運(yùn)行LINK產(chǎn)生的.EXE文件。5)用DEBUG(文件名).EXE裝入程序,并用T和G命令進(jìn)行跟蹤。六、實(shí)驗(yàn)結(jié)果程序的運(yùn)行結(jié)果及程序的代碼的主要目的(從鍵盤上接收兩個(gè)一位十六進(jìn)制數(shù)據(jù),求其積,并以十進(jìn)制形式顯示出來(lái)。)自己寫一段簡(jiǎn)單的源程序,并寫出結(jié)果。七、實(shí)驗(yàn)體會(huì)(匯編指令編程與普通的編程有何不同)實(shí)驗(yàn)四分支程序設(shè)計(jì)一、實(shí)驗(yàn)時(shí)間:4月1日,4月8日二、實(shí)驗(yàn)設(shè)備:硬件:計(jì)算機(jī)系統(tǒng)軟件:MS-DOS、DEBUG、MS-MASM5.0三、實(shí)驗(yàn)?zāi)康募耙?1.掌握利用間接轉(zhuǎn)移指令JMPBX實(shí)現(xiàn)多岔分枝的方法;2.掌握指令對(duì)標(biāo)志寄存器中各標(biāo)志位的影響情況;3.掌握標(biāo)志位和轉(zhuǎn)移指令之間的關(guān)系;4.初步掌握利用設(shè)置斷點(diǎn)調(diào)試程序的方法;5、宏替換指令MACRO及ENDM。四、實(shí)驗(yàn)內(nèi)容:1.仔細(xì)閱讀匯編語(yǔ)言教材相關(guān)內(nèi)容。 2.熟練掌握DEBUG中的G命令。3.在DEBUG下執(zhí)行程序,利用跟蹤命令檢查指令對(duì)標(biāo)志位的影響情況。4.掌握對(duì)INT指令的跟蹤方法。五、實(shí)驗(yàn)步驟:1、對(duì)源程序進(jìn)行匯編的過(guò)程1)用用文字編輯工具(記事本或EDIT)將源程序輸入下面的代碼,其擴(kuò)展名為.ASM。disp macro msglea dx,msgmov ah,9int 21hmov ah,4chint 21hendmstack segment stackdb 256dup(0)stack endsdata segmentparm db 16dup(?)brtable dw offsetbra,offsetbrb,offsetbrcdw offsetbrd,offsetbre,offsetbrfmsga db 'IlikemyIBM-PC!$'msgb db 'Howareyou!$'msgc db 'NibaoCollege$'msgd db 'Thisisasample$'msge db 'Wellcomeusemycoputer!$'msgf db 'Theassemderlanguageof8086$'errms db 'Error!!invalidparameter!!$'data endscode segmentassume cs:code,ds:data,ss:stackstart: mov ax,datamov es,axmov si,80hlea di,parmmov cx,16cldrep movsbmov ds,axcmp parm,2jc errmov al,parm+2sub al,30hjc errcmp al,6jnc errlea bx,brtablecbwadd ax,axadd bx,axjmp [bx]err: disp errmsbra: disp msgabrb: disp msgbbrc: disp msgcbrd: disp msgdbre: disp msgebrf: disp msgfcode endsend start2)用MASM對(duì)源文件進(jìn)行匯編,產(chǎn)生.OBJ文件和.LST文件。若匯編時(shí)提示有錯(cuò),用文字編輯工具修改源程序后重新匯編,直至經(jīng)過(guò)。3)用LINK將.OBJ文件連接成可執(zhí)行的.EXE文件。4)用命令DEBUGAA.EXEXXX(XXX為任意字符串)將AA.EXE帶參數(shù)調(diào)入DEBUG用D命令觀察DS:0080處的命令行,記錄80H處的內(nèi)容和字符個(gè)數(shù)的關(guān)糸。5、退出DEBUG。直接帶參數(shù)運(yùn)行此程序:AAn(n=0--5)依次觀察并記錄n從0到5時(shí)的運(yùn)行結(jié)果。六、實(shí)驗(yàn)結(jié)果程序的運(yùn)行結(jié)果及程序的代碼的主要目的自己寫一段簡(jiǎn)單的分支程序,并寫出結(jié)果。七、實(shí)驗(yàn)體會(huì)(匯編指令分支程序與普通的IFthenelse或者case語(yǔ)句有何不同)實(shí)驗(yàn)五循環(huán)程序設(shè)計(jì)一、實(shí)驗(yàn)時(shí)間:4月15日,4月22日二、實(shí)驗(yàn)設(shè)備:硬件:計(jì)算機(jī)系統(tǒng)軟件:MS-DOS、DEBUG、MS-MASM5.0三、實(shí)驗(yàn)?zāi)康募耙?1、掌握多重循環(huán)程序和排序程序設(shè)計(jì)方法。2、COM文件的要求和生成過(guò)程。3、自己能編寫一個(gè)簡(jiǎn)單的循環(huán)程序并輸出結(jié)果。4、熟悉PSP前綴文件的意義,COM文件前綴與EXE文件前綴的區(qū)別。四、實(shí)驗(yàn)內(nèi)容:1、將教師提供的源程序編譯并鏈接成可執(zhí)行文件。2、掌握帶符號(hào)數(shù)的比較轉(zhuǎn)移指令:JL,JLE,JG,JGE3、掌握偽指令EQU及操作符'$'的使用。4、理解org 100h語(yǔ)句的意義五、實(shí)驗(yàn)步驟:1、對(duì)源程序進(jìn)行匯編的過(guò)程1)用用文字編輯工具(記事本或EDIT)將源程序輸入下面的代碼,其擴(kuò)展名為.ASM。code segmentorg 100hassume cs:code,ds:codemain: jmp startarray dw 1234h,5673h,7fffh,8000h,0dffhdw 0ab5h,0369h,005fh,5634h,9069hcount equ $-arraystart: mov cx,countshr cx,1dec cxmov bl,-1again: mov dx,cxand bl,blje exitxor bl,blxor si,siagain1: mov ax,array[si]cmp ax,array[si+2]jle nchgxchg array[si+2],axmov array[si],axmov bl,-1nchg: inc siinc sidec dxjnz again1loop againexit: int 20hcode endsend main2)用MASM對(duì)源文件進(jìn)行匯編,產(chǎn)生.OBJ文件和.LST文件。若匯編時(shí)提示有錯(cuò),用文字編輯工具修改源程序后重新匯編,直至經(jīng)過(guò)。3)用LINK將.OBJ文件連接成可執(zhí)行的.EXE文件。4)用EXE2BIN將.exe文件轉(zhuǎn)換為.COM文件,命令格式:EXE2BIN???.EXE???.COM5)用命令DEBUG(文件名).EXE調(diào)入DEBUG用D命令觀察運(yùn)行的結(jié)果六、實(shí)驗(yàn)結(jié)果簡(jiǎn)要介紹一下程序的目的,同時(shí)找到結(jié)果所在的位置,并將結(jié)果正確顯示出來(lái)(數(shù)的排序)七、實(shí)驗(yàn)體會(huì)(這里如果不把EXE文件轉(zhuǎn)化成COM文件能不能正常執(zhí)行)實(shí)驗(yàn)六子程序定義及調(diào)用一、實(shí)驗(yàn)時(shí)間:4月22日,4月29日二、實(shí)驗(yàn)設(shè)備:硬件:計(jì)算機(jī)系統(tǒng)軟件:MS-DOS、DEBUG、MS-MASM5.0三、實(shí)驗(yàn)?zāi)康募耙?1、掌握利用堆棧傳遞參數(shù)的子程序調(diào)用方法。2、掌握子程序遞歸調(diào)用方法。3、過(guò)程調(diào)用偽指令:PROC,ENDP,NEAR和FAR。4、8086指令:CALL,RET,RETn。5、利用RET指令退出EXE文件的方法。四、實(shí)驗(yàn)內(nèi)容:1、將教師提供的源程序編譯并鏈接成可執(zhí)行文件。2、用DEBUG命令裝入該可執(zhí)行文件。3、用DEBUG命令的A、T、U命令來(lái)跟蹤調(diào)試該可執(zhí)行文件。五、實(shí)驗(yàn)步驟:1、對(duì)源程序進(jìn)行匯編的過(guò)程1)用文字編輯工具(記事本或EDIT)將源程序輸入下面的代碼,其擴(kuò)展名為.ASM。stack segmentstackdb 256dup(0)stack endsdata segmentary1 db 1,2,3,4,5,6,7,8,9,10count1 equ $-ary1sum1 dw ?ary2 db 10,11,12,13,14,15,16,17,18count2 equ $-ary2sum2 dw ?data endsmain segmentassume cs:main,ds:data,ss:stackstart proc farpush dsxor ax,axpush axmov ax,datamov ds,axmov ax,count1push axlea ax,ary1push axcall farptrsummov ax,count2push axlea ax,ary2push axcall farptrsumretstart endpmain endsproce segmentassume cs:procesum procfarmov bp,spmov cx,[bp+6]mov bx,[bp+4]xor ax,axadn: add al,[bx]adc ah,0inc bxloop adnmov [bx],axret 4sum endpproce endsend start2)用MASM對(duì)源文件進(jìn)行匯編,產(chǎn)生.OBJ文件和.LST文件。若匯編時(shí)提示有錯(cuò),用文字編輯工具修改源程序后重新匯編,直至經(jīng)過(guò)。3)用LINK將.OBJ文件連接成可執(zhí)行的.EXE文件。4)用DEBUG的斷點(diǎn)命令和T命令運(yùn)行此程序,觀察并記錄每次過(guò)程調(diào)用及進(jìn)出棧指令前后(帶';'的語(yǔ)句)的SP和堆棧內(nèi)容。六、實(shí)驗(yàn)結(jié)果當(dāng)CALL的時(shí)候,堆棧當(dāng)中壓入的數(shù)及CS、IP值的變化情況當(dāng)RET的時(shí)候,堆棧當(dāng)中彈出的數(shù)及CS、IP值的變化情況程序的運(yùn)行結(jié)果(最后結(jié)果:SUM1,SUM2的段及偏移地址和它們的內(nèi)容。)七、實(shí)驗(yàn)體會(huì)(程序的調(diào)用與宏指令有何區(qū)別,同時(shí)堆棧在當(dāng)中所起的作用是什么)實(shí)驗(yàn)七模塊化程序設(shè)計(jì)一、實(shí)驗(yàn)時(shí)間:5月6日,5月13日,5月20日二、實(shí)驗(yàn)設(shè)備:硬件:計(jì)算機(jī)系統(tǒng)軟件:MS-DOS、DEBUG、MS-MASM5.0三、實(shí)驗(yàn)?zāi)康募耙?經(jīng)過(guò)實(shí)驗(yàn)掌握下列知識(shí):1、堆棧。堆棧指示器SP和堆棧操作指令PUSH。POP。2、段寄存器和物理地址計(jì)算。3、查表法和查表指令XLAT。4、數(shù)據(jù)串傳送程序和數(shù)據(jù)串傳送指令MOVS。STOS及重復(fù)前輟REP。5、循環(huán)指令ROL。邏輯與指令A(yù)ND和清方向位指令CLD。6、偽操作指令DB。四、實(shí)驗(yàn)內(nèi)容:1、用DEBUG命令A(yù)裝入該可執(zhí)行文件。2、用DEBUG命令的T、U命令來(lái)跟蹤調(diào)試該可執(zhí)行文件。3、用DEBUG命令的D來(lái)查看運(yùn)行過(guò)程。五、實(shí)驗(yàn)步驟:1、用A命令鍵入下列程序:MOV BX,1000MOV DI,MOV CX,4LOP:PUSH CXMOV CL,4ROL DX,CLPOP CXMOV AL,DLAND AL,OFXLATCLDSTOSBLOOP LOPINT 202、用A命令在1000H處鍵入下列ASCII碼并用D命令檢查之:DB`0123456789ABCDEF'用D命令檢查時(shí)注意左邊的ASCII碼值和右邊的字符。3、用R命令給DX送一個(gè)四位的16進(jìn)制數(shù)(例7F8E)。4、用T命令逐條運(yùn)行這程序到LOOP指令處,觀察并記錄每次運(yùn)行結(jié)果,特別是SP和堆棧內(nèi)容(用D命令檢查)5、用G命令將此程序運(yùn)行到結(jié)束,并用D命令檢查H處所轉(zhuǎn)換的結(jié)果。可注意屏幕右邊的ASCII字符與DX是否一致。六、實(shí)驗(yàn)結(jié)果程序的運(yùn)行結(jié)果實(shí)驗(yàn)八中斷調(diào)用程序設(shè)計(jì)一、實(shí)驗(yàn)時(shí)間:5月27日,6月3日,6月10日二、實(shí)驗(yàn)設(shè)備:硬件:計(jì)算機(jī)系統(tǒng)軟件:MS-DOS、DEBUG、MS-MASM5.0三、實(shí)驗(yàn)?zāi)康募耙?1、掌握利用INT16H2號(hào)功能調(diào)用實(shí)行鍵盤輸入的方法。2、熟悉鍵盤的掃描碼和ASCII碼的關(guān)系。3、掌握利用INT10H功能調(diào)用實(shí)現(xiàn)窗口功能的方法。4、掌握利用INT21H功能調(diào)用實(shí)現(xiàn)窗口功能的方法。5、掌握利用系統(tǒng)調(diào)用2H功能調(diào)用實(shí)現(xiàn)實(shí)行鍵盤輸出的方法。四、實(shí)驗(yàn)內(nèi)容:1、將教師提供的源程序編譯并鏈接成可執(zhí)行文件。2、用DEBUG命令裝入該可執(zhí)行文件。3、用DEBUG命令的A、T、U命令來(lái)跟蹤調(diào)試該可執(zhí)行文件。五、實(shí)驗(yàn)步驟:1、程序:PRO_NAM SEGMENTASSUME CS:PRO_NAMORG 100HAGAIN: MOV AH,0INT 16HMOV BX,AXCALL BINIHEXMOV AH,2MOV dl,20hINT 21HMOV DL,BLMOV AH,2INT 21HMOV DL,0DHMOV AH,2INT 21HMOV DL,0AHMOV AH,2INT 21HJMP AGAININT 20HBINIHEX PROC NEARMOV CH,4ROTATE: MOV CL,4ROL BX,CLMOV AL,BLAND AL,0FHADD AL,30HCMP AL,3AHJL PRINTADD AL,7PRINT: MOV DL,ALMOV AH,2INT 21HDEC CHJNZ ROTATERETBINIHEX ENDPPRO_NAM ENDSEND AGAIN2、輸入,匯編,連接此程序,并將它轉(zhuǎn)變成.COM文件。3、運(yùn)行此程序,觀察并記錄各個(gè)鍵的掃描碼,ASCII碼及對(duì)應(yīng)字符。六、實(shí)驗(yàn)結(jié)果程序的運(yùn)行結(jié)果七、實(shí)驗(yàn)體會(huì)(匯編中斷能夠?qū)崿F(xiàn)什么功能)實(shí)驗(yàn)九系統(tǒng)功能調(diào)用程序設(shè)計(jì)一、實(shí)驗(yàn)時(shí)間:6月17日二、實(shí)驗(yàn)設(shè)備:硬件:計(jì)算機(jī)系統(tǒng)軟件
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 苯換熱器課程設(shè)計(jì)前言
- 物流傳媒業(yè)營(yíng)銷活動(dòng)總結(jié)
- 酒店領(lǐng)班的領(lǐng)導(dǎo)力培養(yǎng)
- 化工工業(yè)行業(yè)營(yíng)銷策略總結(jié)
- 餐具店銷售員工工作總結(jié)
- 2024年稅務(wù)師題庫(kù)2
- 2025屆阜陽(yáng)市高三語(yǔ)文上學(xué)期期末統(tǒng)測(cè)考試卷及答案解析
- 制定合同范本(2篇)
- 創(chuàng)新研發(fā)保密協(xié)議書(2篇)
- 2024年理論培訓(xùn)心得體會(huì)
- 有限空間作業(yè)審批表
- 認(rèn)罪認(rèn)罰悔罪書(4篇)
- 煙花采購(gòu)協(xié)議書
- 高考作文模擬寫作:“善言”與“敢言”+導(dǎo)寫及范文
- 《建筑施工承插型盤扣式鋼管支架安全技術(shù)規(guī)程》 JGJ231-2010
- 視頻監(jiān)控維護(hù)合同
- 國(guó)開(kāi)大學(xué)2023年01月22588《管理線性規(guī)劃入門》期末考試參考答案
- 《城市軌道交通車輛空調(diào)檢修》課程標(biāo)準(zhǔn)
- 頂管過(guò)程中遇到孤石的處理方法
- 裝飾快速成交銷售技巧
- 農(nóng)田輸配電工程施工方案
評(píng)論
0/150
提交評(píng)論