|
|
| <!--插入廣告JS代碼--> |
前面的章節(jié)把指令系統(tǒng)都詳細的跟大家講解了,從這節(jié)開始,我們將進行指令的練習(xí)。
在這部份章節(jié)中,我們都以萬利公司的仿真調(diào)試軟件MedWin來講解,大家啟動軟件后,進入“模擬調(diào)試”狀態(tài)。建立一個新項目,在項目中添加一個新的文件(以.ASM作為后綴名),將后面的程序輸入,編譯及裝載,排除所有錯誤直到匯編通過。然后打開相應(yīng)的觀察窗口,例如外部數(shù)據(jù)存儲器(XDATA)、內(nèi)部數(shù)據(jù)存儲器(DATA)、寄存器、特殊功能寄存器等窗口。
在學(xué)習(xí)過程中,大家要把每條指令吃透,即要想為什么用這種指令?如果修改一下的話,怎么修改?總之,大家要善于思考,多問幾個為什么!
本實驗在程序編譯之前,將外部數(shù)據(jù)存儲器(XDATA)和內(nèi)部數(shù)據(jù)存儲器(DATA)窗口打開,并在XDATA窗口從00H單元開始連續(xù)鍵入30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,40H,41H,42H,43H,44H,45H,然后程序單步運行或全速運行,停下來后觀察內(nèi)部數(shù)據(jù)區(qū)窗口(DATA)從30H開始的數(shù)據(jù)是否跟上述相同。
實驗源程序如下:
ORG 00H
START: MOV DPTR,#00H
MOV SP,#80H
MOV R0,#30H
MOV R7,#10H
LOOP: MOVX A,@DPTR
MOV @R0,A
INC R0
INC DPTR
DJNZ R7,LOOP
HERE: SJMP $
END