|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
1、外部ram 64kb。对外部ram64kb的间接寻址,应使用@dptr作间址寻址寄存器,其形式为:@dptr。% k8 w( A; F& q9 q- o& [
$ ?+ S, O/ n- J9 Y% X$ A例如movx a,@dptr;其功能是把dptr指定的外部ram的单元的内容送入累加器a中。( B/ F2 D- x, b# k7 z% G+ F. j
' M+ @9 C, X J) c5 J1 @7 n; v外部ram的低256单元是一个特殊的寻址区,除可以用dptr作间址寄存器寻址外,还可以用r0或r1作间址寄存器寻址。
: x, x, ]% F% ^+ W
% p" r1 p$ J5 M) B3 Z/ R* B例如movx a,@r0;这条指令的意思是,把r0指定的外部ram单元的内容送入累加器a。
2 L' A! T6 H* V1 b) H! U2 m& m* m3 ^# B9 h1 q# p$ l
2、堆栈操作指令(push和pop)也应算作是寄存器间接寻址,即以堆栈指针sp作间址寄存器的间接寻址方式。
6 i$ f! W" V+ }8 H. x
, n% l) H' W4 W* O$ V J" ?7 E3、内部ram低128单元。对内部ram低128单元的间接寻址,应使用r0或r1作间址寄存器,其通用形式为@ri(i=0或1)。) o' V8 @& K; h/ {
; A& o5 n$ W6 Y% N4、内部ram的高128单元也可以访问。但是注意不能用间接寻址的方式去访问特殊功能寄存器,虽然sfr与内部高128字节ram地址相同,但是当一个指令访问高于7hf的内部位置时,cpu是根据寻址方式来区分是访问高128字节的内部ram数据还是访问sfr.8 G& ]: b. t0 G' X5 \2 Y
|
|