當前位置:編程學習大全網 - 編程軟體 - 匯編MOV DPTR,#E000H;MOVX A,@DPTR與MOVX A, #E000H有什麽區別?

匯編MOV DPTR,#E000H;MOVX A,@DPTR與MOVX A, #E000H有什麽區別?

嘿嘿

MOV DPTR,#E000H;MOVX A,@DPTR與MOVX A, #E000H有什麽區別?

最大的區別就是壹個是51單片機的合法指令,另壹個是51單片機的非法指令

妳是想訪問片外數據存儲器,將片外數據存儲器地址為E000H單元的內容傳送給累加器A。

訪問片外數據存儲器必須要使用數據指針DPTR做間接寄存器來訪問

MOV DPTR,#E000H; 首先將要訪問的地址送給指針 即要確定數據指針的指向(E000H的單元)

MOVX A;使用片外數據存儲器的傳送指令,將指針所指的單元的內容送給累加器A。

因此 以上指令時正確的。

而MOVX A, #E000H 在8051單片機的指令表中時不存在的,

MOVX指令 只能采用寄存器間接尋址 即如,@DPTR ,@R0; 而不能采用其它尋址方式

如: #E000H 立即數尋址 E000H 直接尋址 都是不對的 ,即違法的。

呵呵 滿意 就選滿意回答啊

  • 上一篇:斐索是如何測量光速的?
  • 下一篇:VB用circle畫圓的命令
  • copyright 2024編程學習大全網