指令系統(tǒng)和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)

指令系統(tǒng)和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)

ID:20085235

大?。?15.50 KB

頁(yè)數(shù):14頁(yè)

時(shí)間:2018-10-09

指令系統(tǒng)和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)_第1頁(yè)
指令系統(tǒng)和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)_第2頁(yè)
指令系統(tǒng)和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)_第3頁(yè)
指令系統(tǒng)和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)_第4頁(yè)
指令系統(tǒng)和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)_第5頁(yè)
資源描述:

《指令系統(tǒng)和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、第二章指令系統(tǒng)和匯編語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)本章實(shí)驗(yàn)主要包括指令系統(tǒng)和匯編語(yǔ)言程序設(shè)計(jì)兩部分。采用軟件模擬調(diào)試的方法,目的在于通過(guò)這些實(shí)驗(yàn)可以使學(xué)生鞏固所學(xué)知識(shí),加深對(duì)MCS-51單片機(jī)內(nèi)部結(jié)構(gòu)、指令系統(tǒng)的理解,更進(jìn)一步掌握匯編語(yǔ)言程序設(shè)計(jì)的方法和技巧。第一節(jié)指令系統(tǒng)實(shí)驗(yàn)實(shí)驗(yàn)一熟悉鍵盤(pán)操作及數(shù)傳指令編程設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康?.熟悉軟件模擬調(diào)試的環(huán)境及鍵盤(pán)操作。2.掌握匯編語(yǔ)言程序設(shè)計(jì)的方法,加深對(duì)指令的理解。3.學(xué)會(huì)軟件模擬調(diào)試和察看修改觀察項(xiàng)的方法。二、實(shí)驗(yàn)內(nèi)容印證數(shù)據(jù)傳送指令的功能、尋址方式以及PC指針、SP指針、DPTR指針、Ri指針?lè)謩e對(duì)代碼段、

2、堆棧段、外擴(kuò)數(shù)據(jù)存儲(chǔ)器段、位尋址區(qū)等不同存儲(chǔ)器的訪問(wèn)方式。三、實(shí)驗(yàn)步驟1.進(jìn)入調(diào)試軟件環(huán)境,輸入源程序;2.匯編源程序;3.用單步方式運(yùn)行程序;4.檢查并記錄各寄存器和存儲(chǔ)單元內(nèi)容的變化。四、程序清單1.內(nèi)部RAM數(shù)據(jù)傳送需要查看的數(shù)據(jù)有30H,31H,A,R0等。ORG0000HMOVR0,#30HMOV30H,#45HMOV31H,#46HMOVR2,30HMOV02H,31HMOVA,#87HMOV0E0H,30HMOV30H,AMOV31H,@R0SJMP$END271.外部數(shù)據(jù)傳送需要查看的數(shù)據(jù)有外部數(shù)據(jù)存儲(chǔ)器單元2000H,外部程

3、序存儲(chǔ)器單元2001H。ORG0000HMOVA,#89HMOVDPTR,#2000HMOVX@DPTR,AINCDPTRCLRAMOVCA,@A+DPTRSJMP$ORG2000HDB44HDB78HDB67HEND2.堆棧操作需要查看的數(shù)據(jù)有50H、51H、A及SP指針和堆棧區(qū)中數(shù)據(jù)隨PUSH和POP指令執(zhí)行后的變化情況和數(shù)據(jù)的存放次序等。1)可用于保護(hù)現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)的程序ORG0000HMOVSP,#5FHMOV50H,#3BHMOV51H,#2FHMOVA,#12HPUSH50HPUSH51HPUSHACCPOP0E0HPOP51HP

4、OP50HSJMP$END2)可用于數(shù)據(jù)交換的程序ORG0100HMOVSP,#6FHMOV50H,#3BHMOV51H,#2FHPUSH50H27PUSH51HPOP50HPOP51HSJMP$END4.數(shù)據(jù)交換記錄每條指令運(yùn)行后的結(jié)果,從而加深對(duì)各種不同的交換指令的理解。ORG0000HMOVA,#58HSWAPAMOV40H,AMOVA,#30HMOVR0,#30HMOV@R0,#09HXCHDA,@R0MOV50H,#1MOVA,#89HXCHA,50HMOVR7,#3XCHA,R7XCHA,@R0SJMP$END五、思考題1.寄存器

5、尋址與寄存器間接尋址有什么區(qū)別?2.PC指針與SP指針有什么區(qū)別?3.DPTR指針與Ri(R0,R1)指針有什么區(qū)別?4.立即尋址與直接尋址有什么區(qū)別?1.同一個(gè)特殊功能寄存器不同表達(dá)形式。實(shí)驗(yàn)二數(shù)傳指令和算數(shù)運(yùn)算指令編程設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康?.掌握數(shù)據(jù)塊的傳送操作和算術(shù)運(yùn)算指令的應(yīng)用。2.進(jìn)一步掌握匯編語(yǔ)言設(shè)計(jì)和調(diào)試方法。3.掌握觀察窗口的使用方法。4.學(xué)會(huì)給存儲(chǔ)單元賦初值的方法。27一、實(shí)驗(yàn)內(nèi)容1.?dāng)?shù)據(jù)區(qū)傳送(1)把內(nèi)部RAM40H~4FH置初值0A0H~0AFH;(2)而后把40H~4FH內(nèi)容傳送到外部RAM9800H~980FH中;(3)

6、再把9800~980FH內(nèi)容傳送到50H~5FH中。2.多字節(jié)十進(jìn)制加法加數(shù)放在30H開(kāi)始的單元中(最低位放在30H,按從小到大的順序存放),被加數(shù)和結(jié)果存放在20H開(kāi)始的單元(最低位在20H中),字節(jié)數(shù)放在2FH中,最高進(jìn)位位放在7FH中的最低位。二、實(shí)驗(yàn)步驟1.分別用單步和連續(xù)運(yùn)行方式,調(diào)試上述兩個(gè)程序;2.在執(zhí)行第二個(gè)程序之前,給被加數(shù)和加數(shù)單元賦初值;3.在觀察窗口中觀察結(jié)果。三、實(shí)驗(yàn)程序清單1.?dāng)?shù)據(jù)塊傳送程序:ORG0000HMAIN:MOVR0,#40HMOVR2,#10HMOVA,#0A0HA1:MOV@R0,AINCR0INC

7、ADJNZR2,A1MOVR0,#40HMOVDPTR,#9800HMOVR2,#10HA2:MOVA,@R0MOVX@DPTR,AINCR0INCDPTRDJNZR2,A2MOVR0,#50HMOVDPTR,#9800HMOVR2,#10HA3:MOVXA,@DPTRMOV@R0,AINCDPTRINCR027DJNZR2,A3SJMP$END2.多字節(jié)十進(jìn)制加法:ORG0000HMAIN:MOVR0,#30HMOVR1,#20HMOV2FH,#04HCLRCDA1:MOVA,@R0ADDCA,@R1DAAMOV@R1,AINCR0INCR

8、1DJNZ2FH,DA1MOV7FH,CSJMP$END一、思考題1.若兩個(gè)數(shù)據(jù)塊都在外部數(shù)據(jù)存儲(chǔ)器中,如何實(shí)現(xiàn)數(shù)據(jù)塊的傳送?2.在調(diào)試第一個(gè)程序時(shí),若不用程序給4

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。