<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 從零開始51單片機(jī)教程——10 數(shù)據(jù)傳遞類指令

          從零開始51單片機(jī)教程——10 數(shù)據(jù)傳遞類指令

          作者: 時(shí)間:2012-02-15 來源:網(wǎng)絡(luò) 收藏

          數(shù)據(jù)傳遞類指令有哪些?什么是直接與間接

          3以直接地址為目的操作數(shù)的指令

          MOV direct,A 例: MOV 20H,A

          MOV direct,Rn MOV 20H,R1

          MOV direct1,direct2 MOV 20H,30H

          MOV direct,@Ri MOV 20H,@R1

          MOV direct,#data MOV 20H,#34H

          4以間接地址為目的操作數(shù)的指令

          MOV @Ri,A 例:MOV @R0,A

          MOV @Ri,direct MOV @R1,20H

          MOV @Ri,#data MOV @R0,#34H

          5十六位數(shù)的傳遞指令

          MOV DPTR,#data16

          8051是一種8位機(jī),這是唯一的一條16位立即數(shù)傳遞指令,其功能是將一個(gè)16位的立即數(shù)送入DPTR中去。其中高8位送入DPH,低8位送入DPL。例:MOV DPTR#1234H,則執(zhí)行完了之后DPH中的值為12H,DPL中的值為34H。反之,如果我們分別向DPH,DPL送數(shù),則結(jié)果也一樣。如有下面兩條指令:MOV DPH,#35H,MOV DPL#12H。則就相當(dāng)于執(zhí)行了MOV DPTR,#3512H

          數(shù)據(jù)傳遞類指令綜合練習(xí):

          1. 給出每條指令執(zhí)行后的結(jié)果

          2. 上機(jī)練習(xí):

            MOV 23H,#30H

            MOV 12H,#34H

            MOV R0,#23H

            MOV R7,#22H

            MOV R1,12H

            MOV A,@R0

            MOV 34H,@R1

            (23h)=30h

            (12h)=34h

            (R0)=23H

            (R7)=22H

            (R1)=12H

            (A)=30H

            (34H)=34H

            MOV 45H,34H

            MOV DPTR,#6712H

            MOV 12H,DPH

            MOV R0,DPL

            MOV A,@R0

            (45H)=34H

            (DPTR)=6712H

            (12H)=67H

            (R0)=12H

            (A)=67H

            說明:用括號括起來代表內(nèi)容,如(23H)則代表內(nèi)部RAM23H單元中的值,(A)則代表累加器A單元中的值。

          1. 進(jìn)入DOS狀態(tài),進(jìn)入WAVE所在的目錄,例D:WAVE

          2. 鍵入MCS51,出現(xiàn)如下畫面

            點(diǎn)擊瀏覽下一頁數(shù)據(jù)傳遞指令>圖1

          3. File->Open,出現(xiàn)對話框后,在Name處輸入一個(gè)文件名(見圖2),如果是下面列表中已存在的,則打開這個(gè)文件,如果不存在這個(gè)文件,則新建一個(gè)文件(見圖3

            點(diǎn)擊瀏覽下一頁圖2點(diǎn)擊瀏覽下一頁

          4. 在空白處將上面的程序輸入。見圖4。用ALT+A匯編通過。用F8即可單步執(zhí)行,在執(zhí)行過程中注意觀察屏幕左邊的工作寄存器及A累加器中的值的變化。

            點(diǎn)擊瀏覽下一頁圖4

          5. 內(nèi)存中值的變化在此是看不到的,可以用如下方法觀察(看圖5):將鼠標(biāo)移到DATA,雙擊,則光標(biāo)進(jìn)入此行,此時(shí)可以鍵盤上的上下光標(biāo)鍵上下翻動來觀察內(nèi)存值的變化。本行的最前面DATA后面的數(shù)據(jù)代表的是“一段”的開始地址,如現(xiàn)在為20H,再看屏幕的最上方,數(shù)字從0F,顯示兩者相加就等于真正的地址值,如現(xiàn)在圖上所示的內(nèi)存20H、21H22H、23H中的值分別是FBH 、0EHE8H、30H。

            點(diǎn)擊瀏覽下一頁圖5

            6、當(dāng)運(yùn)行完程序后,即進(jìn)入它的反匯編區(qū),不是我們想要的東西。為了再從頭開始,可以用CTRL+F2功能鍵復(fù)位PC值。注意此時(shí)不會看到原來的窗口,為看到原來的窗口,請用ALT+4ALT+5等來切換。當(dāng)然以上操作也可以菜單進(jìn)行。CTRL+F2是程序復(fù)位,用RUN菜單。窗口用WINDOWS菜單。



          關(guān)鍵詞: 單片機(jī) 地址傳遞

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();