问个很简单的问题,一直搞不懂!追加30分

来源:百度知道 编辑:UC知道 时间:2024/07/05 15:20:01
这条指令是 寄存器单元地址加一 还是 寄存器单元地址的内容加一

比如说

MOV 30H,#12H
MOV R2,30H
INC R2
MOV A,R2

这段结果是什么

我用软件防真了怎么是寄存器单元地址的内容加一 结果是A=#13H

我要的结果是A=31H

请问怎么编写

我是自学的见笑的地方多多包含,请高手赐教。

回答好的 追加30分
怎么没有我想要的答案 是不是不理解题意
MOV 31H,#45H
MOV 32H,#89H
MOV R0,31H
MOV A,@R0 --------a=45
INC R0
MOV A,R0 ---------a=46为什么不是a=89

想最后得到的是A=89 怎么写

我主要的目的是:地址自动加一指向下一单元中的内容,

而不是,地址不变,单元中的内容加一

结果只所以是#13H是因为这条指令MOV R2,30H 并不是把30H给R2,因为指令里的30H是地址而不是数据
要得到31H
mov 30,#30H
MOV R2,30H
INC R2
MOV A,R2

对于这个问题可以去看看单片机的是寻址方式,你就会明白的

加一的是里面的内容

你想得到A=31H...为什么还写了一句
MOV 30H,#12H
.如果你只想得到31H。
mov R2,#30H
INC R2
MOV A,R2