資源描述:
《最新微機(jī)原理實(shí)驗(yàn)教案(1)教學(xué)教材.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、最新微機(jī)原理實(shí)驗(yàn)教案(1)五、程序清單DATASEGMENTBUFDB21H,34H,0A6H,78H,0F8H,88H,0C9H,01H,33H,11HLENEQU$-BUFDATAENDSSTACKSEGMENTBUFSDB300DUP(?)LENSEQU$-BUFSSTACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXMOVAX,STACKMOVSS,AXMOVSP,LENSS5:MOVCX,LENDECCXA53:MOVBX,OFFSETBU
2、FPUSHCXA52:MOVAX,[BX]CMPAL,AHJCA51A54:INCBXLOOPA52POPCXLOOPA53MOVAH,4CHINT21HA51:XCHGAL,AHMOV[BX],AXJMPA54CODEENDSENDSTART實(shí)驗(yàn)一排序程序的設(shè)計(jì)與實(shí)踐六、實(shí)驗(yàn)步驟及要求(1)、在EDIT環(huán)境下鍵入編寫程序,保存為*.asm;(2)、編譯、連接源程序*.asm,分別生成*.obj、*.lst和*.exe文件。(3)、在TD調(diào)試環(huán)境下,用連續(xù)單步方式調(diào)試*.exe,觀察排序時(shí)數(shù)據(jù)移動(dòng)變化情況。(4)、改程序?yàn)榘磸男〉酱笈判?。?shí)驗(yàn)
3、一排序程序的設(shè)計(jì)與實(shí)踐七、實(shí)驗(yàn)報(bào)告要求(包含預(yù)習(xí)報(bào)告要求和最終報(bào)告要求)1.實(shí)驗(yàn)名稱:注意實(shí)驗(yàn)項(xiàng)目名稱應(yīng)與實(shí)驗(yàn)大綱中的實(shí)驗(yàn)項(xiàng)目名稱相符。2.實(shí)驗(yàn)?zāi)康?.實(shí)驗(yàn)內(nèi)容及要求預(yù)習(xí)最終4.程序設(shè)計(jì)(從大到?。﹫?bào)告要求報(bào)告要求包含流程圖和源程序,源程序必須加必要注釋。5.實(shí)驗(yàn)結(jié)果及結(jié)果分析6.實(shí)驗(yàn)中出現(xiàn)的問題及解決方法7.回答思考題(如何改為由小到大排序)實(shí)驗(yàn)一排序程序的設(shè)計(jì)與實(shí)踐實(shí)驗(yàn)一求最大值程序一、實(shí)驗(yàn)?zāi)康?.掌握條件判斷指令的用法。2.掌握循環(huán)程序的設(shè)計(jì)方法。3.學(xué)習(xí)在屏幕上顯示字符的方法。4.學(xué)習(xí)在PC機(jī)上建立、匯編、鏈接、調(diào)試和運(yùn)行匯編語言的過
4、程。二、實(shí)驗(yàn)內(nèi)容在首地址為DATA1的數(shù)組中找出最大值,并在屏幕上顯示出來。DATA1DB35H,07H,0ABH,56H,12H,98H,0CDH,76H,0FAH,0BFH顯示結(jié)果如下圖所示:實(shí)驗(yàn)一求最大值程序三、程序框圖實(shí)驗(yàn)一求最大值程序四、實(shí)驗(yàn)步驟及要求(1)輸入程序,進(jìn)行調(diào)試,運(yùn)行出求最大值程序的結(jié)果。(2)熟悉TD調(diào)試環(huán)境下,在TD環(huán)境下單步運(yùn)行本程序,以加深對(duì)程序指令的理解。(3)如何把程序改成求最小值的程序。(4)如果為有符號(hào)數(shù),其最大值、最小值怎么求取。實(shí)驗(yàn)一求最大值程序五、程序介紹要掌握這個(gè)程序,需要理解以下幾點(diǎn):1.程序
5、完成的任務(wù)有:定義及初始化、求最值、顯示最值。2.怎么顯示字符?例如顯示“A”,利用INT21H的AH=02H號(hào)子功能,顯示DL的內(nèi)容,DL中的值為字符對(duì)應(yīng)的ASCII碼值。3.宏定義介紹DISXMACROXMOVDL,XMOVAH,02INT21HENDM4.如果結(jié)果最大值是FAH,存儲(chǔ)在AL中,如何顯示?先AL暫存BL,對(duì)AL邏輯右移4位,再判斷是不是大于9,若大于9加37H,否則加30H,然后送去顯示。取出暫存的BL送AL,然后與0FH相與,再判斷是不是大于9,若大于9加37H,否則加30H,再送去顯示。5.返回DOS可用INT21H的
6、AH=4CH號(hào)子功能。6.如何顯示字符串?利用INT21H的AH=09H號(hào)子功能,DX指向顯示字符串首地址。實(shí)驗(yàn)一求最大值程序六、實(shí)驗(yàn)程序DISXMACROXMOVDL,XMOVAH,02INT21HENDMSTACKSEGMENTSTADB512DUP(?)TOPEQULENGTHSTASTACKENDSDATASEGMENTBUFDB'MAXNUMBER:',0DH,0AH,'$'DATA1DB35H,07H,0ABH,56H,12HDB98H,0CDH,76H,0FAH,0BFHBLOCKDB10DATAENDSCODESEGMENTA
7、SSUMECS:CODE,DS:DATA,SS:STACKSTART:MOVAX,STACKMOVSS,AXMOVSP,TOPMOVAX,DATAMOVDS,AXMOVDX,OFFSETBUFMOVAH,09INT21HMOVSI,OFFSETBLOCKMOVCX,[SI]DECCXMOVSI,OFFSETDATA1MOVAL,[SI]MAX1:INCSICMPAL,[SI]JANEXTMOVAL,[SI];AL中定義為最大值NEXT:LOOPMAX1實(shí)驗(yàn)一求最大值程序MOVBL,ALMOVCL,04SHRAL,CLCMPAL,09JAMAX
8、4ADDAL,30HMAX2:DISXALMOVAL,BLANDAL,0FHCMPAL,09JAMAX5ADDAL,30HMAX3:DISXALMOVAH,4CHI