单片机汇编语言中的Rn和Ri,高手进!!!

[复制链接]
7136|6
 楼主| aijun02 发表于 2009-1-24 16:27 | 显示全部楼层 |阅读模式
在汇编讲解指令时总要用Rn和Ri.我知道Rn表示:R0~R7;而Ri表示:R0~R1 

为什么要有这种区别?它们不都表示工作寄存器组吗??? 
我刚开始学习汇编语言,请高人指点!谢谢!!!
呆板书生 发表于 2009-1-24 17:32 | 显示全部楼层

本来就没有区别,

是你自己多虑了。

不过,R1和R0和其他的寄存器不同,是可以用于间接寻址的。

比如mov @r1,a

NE5532 发表于 2009-1-24 17:35 | 显示全部楼层

注意哦,不是所有指令都可以使用R0~R7的

答案在指令表里,自己找。
xhtxzxw 发表于 2009-1-24 20:06 | 显示全部楼层

嘿嘿

感觉LZ没有入门.
打比方吧,  家庭成员(=爷爷,奶奶,父亲,母亲,自己) <-----> 工作寄存器组(=R0~R7)
                  为家庭带来收入者(=父亲,母亲) <-----> 间址寻址寄存器Ri(=R0,R1)
显然,(父亲,母亲)属于家庭成员,  (R0,R1)属于工作寄存器组
父亲母亲能做的事,别人做不了, 类似的R0R1能做的事,别的寄存器做不了,所以,把R0R1单独列出来,用综合Ri表示
           
HWM 发表于 2009-1-24 20:19 | 显示全部楼层

主要是MCS-51指令编码的限制,n域有三位,i域仅一位。

因此Rn中n可取1,2...7,而Ri中的i仅可取0,1。
hotpower 发表于 2009-1-24 20:50 | 显示全部楼层

基础知识

airwill 发表于 2009-1-24 22:30 | 显示全部楼层

xhtxzxw

的解释和透彻, 鼓励
您需要登录后才可以回帖 登录 | 注册

本版积分规则

48

主题

99

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部