3个回答
展开全部
在51单片机编程中,可以做数据指针的寄存器只有 R0 、 R1 、 DPTR。
R0 、 R1 做数据指针时,只能访问片内数据存储器和片外数据存储器的00H~FFH低8位地址空间。
DPTR可以访问片外数据存储器的16位地址空间 即0000H~FFFFH.
DPTR还可以和累加器A配合,访问程序存储器中数据表中的数据,DPTR作为指针指向表的首地址。
具有指针功能指令有:
1 访问片内数据存储器 :
MOV A, @R0 MOV @R1,A
ADD A,@R0 INC @R1 SUBB A, @R1
ANL A, @R0 ORL A, @R1
CJNE @R0, #data, rel
2 访问片外数据存储器:
MOVX A, @R0 MOVX @R1,A
3 访问片外数据存储器:
MOVX A, @DPTR MOVX @DPTR,A
4 访问程序数据存储器:
MOVC A, @A+DPTR
@ 为指针前缀 如@R0 代表 R0做为指针 其中R0中存放的是操作数的地。
呵呵 如果满意 请选择:满意回答
R0 、 R1 做数据指针时,只能访问片内数据存储器和片外数据存储器的00H~FFH低8位地址空间。
DPTR可以访问片外数据存储器的16位地址空间 即0000H~FFFFH.
DPTR还可以和累加器A配合,访问程序存储器中数据表中的数据,DPTR作为指针指向表的首地址。
具有指针功能指令有:
1 访问片内数据存储器 :
MOV A, @R0 MOV @R1,A
ADD A,@R0 INC @R1 SUBB A, @R1
ANL A, @R0 ORL A, @R1
CJNE @R0, #data, rel
2 访问片外数据存储器:
MOVX A, @R0 MOVX @R1,A
3 访问片外数据存储器:
MOVX A, @DPTR MOVX @DPTR,A
4 访问程序数据存储器:
MOVC A, @A+DPTR
@ 为指针前缀 如@R0 代表 R0做为指针 其中R0中存放的是操作数的地。
呵呵 如果满意 请选择:满意回答
展开全部
MOVX、MOVC指令,还有用到@Ri的其他指令。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
MOVX如:MOVX @DPTR,A
MOVX A,@DPTR
MOVX @R0,A
MOVX A,@R0
MOVC如:MOVC A,@A+DPTR
MOVC A,@A+PC
MOV如:MOV @R0,A
MOV A,@R0
INC如:INC DPTR
INC R0
DEC如: DEC R0
DEC R1
MOVX A,@DPTR
MOVX @R0,A
MOVX A,@R0
MOVC如:MOVC A,@A+DPTR
MOVC A,@A+PC
MOV如:MOV @R0,A
MOV A,@R0
INC如:INC DPTR
INC R0
DEC如: DEC R0
DEC R1
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询