標題: 51單片機關于MOVC A,@A+PC指令 請給位網友們出手相助 [打印本頁]
作者: whisperwalker 時間: 2009-6-11 19:00
標題: 51單片機關于MOVC A,@A+PC指令 請給位網友們出手相助
ORG 0000H
MOV A,#02H
INC A
NOP
NOP
NOP
MOVC A,@A+PC
RET ;(改為END用以驗證兩者的區別)
DB 59H,5AH,0BH,0CH,0DH,5EH,5FH,60H,61H,62H
;在最后一句為RET的情況下,無論加多少個NOP以改變PC的值,最終結果始終不變。如此看來“MOVC A,@A+PC”好像只和A有關。
;將RET改成END后會改變A的值。并且結果不再程序里所列的表中(改變NOP的數量同樣會改變A的值,似乎這時PC影響了結果,隨著NOP的增加多少,結果也是增加多少)RET雖然會影響PC的值,但也是在“MOVC A,@A+PC”以后。
作者: nishibeitina 時間: 2009-6-29 17:07
最后一句是程序返回,有重新開始執行了,所以無論加幾個NOP最終結果始終不變;
因為A中的值經過上面的程序已經變為03H,而表中第一個數為59H,而A為03H,所以表中第三個數才是結果,為0BH;
因為RET在執行完"MOV A,@A+PC"后才執行的。
歡迎光臨 (http://www.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |