3.2.2直接寻址 指令中直接给出操作数地址的寻址方式,能 进行直接寻址的存储空间有SFR寄存器和内 部数据RAM 例如: MOV PSW,#20H PSw←#20H PSW为直接寻址寄存器的符号地址。 MOVA,30H;A←30H内部RAM单 元中的内容 30H为直接给出的内部RAM的地址。 返回本节
3.2.2 直接寻址 • 指令中直接给出操作数地址的寻址方式,能 进行直接寻址的存储空间有SFR寄存器和内 部数据RAM。 例如:MOV PSW,# 20H ; PSW←#20H PSW为直接寻址寄存器的符号地址。 MOV A,30H ;A←30H内部RAM单 元中的内容 • 30H为直接给出的内部RAM的地址。 返回本节
3.2.3寄存器寻址 以通用寄存器的内容为操作数的寻址方式。 通用寄存器指A、B、DPTR以及R0~R7。 例如:CLRA A←0 INC DPTR DPTR←DPTR+1 ADD R5, #20H: R5<-#20H+R5 返回本节
3.2.3 寄存器寻址 • 以通用寄存器的内容为操作数的寻址方式。 通用寄存器指A、B 、DPTR以及R0~R7。 例如:CLR A ;A←0 INC DPTR ;DPTR←DPTR+1 ADD R5,# 20H ;R5←#20H+R5 返回本节
3.2.4寄存器间接寻址 以寄存器中内容为地址,以该地址中内容为 操作数的寻址方式。间接寻址的存储器空间 包括内部数据RAM和外部数据RAM。 能用于寄存器间接寻址的寄存器有R0,R1, DPTR,SP。其中R0、R1必须是工作寄存器 组中的寄存器。SP仅用于堆栈操作
3.2.4 寄存器间接寻址 • 以寄存器中内容为地址,以该地址中内容为 操作数的寻址方式。间接寻址的存储器空间 包括内部数据RAM和外部数据RAM。 • 能用于寄存器间接寻址的寄存器有R0,R1, DPTR,SP。其中R0、R1必须是工作寄存器 组中的寄存器。SP仅用于堆栈操作
例如:MO@R0,A;内部RAM(R0)A 其指令操作过程示意图如图3-1所示。 又如:MOXA,@R1;A←外部RAM(P2R1) 其指令操作过程示意图如图3-2所示。 再如: MOVX aDPTR,A;外部 RAM(DPTR)←A 其指令操作过程示意图如图3-3所示
例如:MOV @R0,A ;内部RAM(R0)←A 其指令操作过程示意图如图3-1所示。 又如:MOVX A,@R1;A←外部RAM(P2R1) 其指令操作过程示意图如图3-2所示。 再如: MOVX @DPTR , A ;外部 RAM(DPTR)←A 其指令操作过程示意图如图3-3所示
片内RAM RO 30H 30H 34H A 34H 图3-1MOV@RO,A间接寻址示意图
片内RAM R0 30H A 34H 30H 34H 图3-1 MOV @R0,A间接寻址示意图