打印

MOV A Rn和MOV A @Ri 能这样理解吗

[复制链接]
3966|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wjcy131421|  楼主 | 2008-4-25 13:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MOV A Rn和MOV A @Ri  能这样理解吗 

MOV A Rn 中Rn里是一个数据
MOV A @Ri中Ri里是一个地址

那Rn和Ri应该都是寄存器  ,有什么差别呢????

还有寄存器是既可以存数据也可以存地址吗?但是从另一个角度来看,地址和数据在寄存器中都是一个8位的二进制数,只是意义不同?不知道可不可以这样理解?

初学单片机,被这些东西搞糊了,听听大家的意见~!~
 
 

相关帖子

沙发
老公牛| | 2008-4-25 13:05 | 只看该作者

使用特权

评论回复
板凳
三块石头| | 2008-4-25 13:17 | 只看该作者

re

Rn是指51单片机中的通用寄存器R0~R7;
Ri是指上面中的R0~R1
因为只有R0和R1能在指令MOV A,@Ri中出现,R2~R7不可以

“从另一个角度来看,地址和数据在寄存器中都是一个8位的二进制数,只是意义不同”
这话比较同意,单片机甚至PC中所有东西都是无地位差别的二进制数,只不过看你怎么解释这些数字代表的含义,或者说做什么用。

使用特权

评论回复
地板
wjcy131421|  楼主 | 2008-4-29 13:56 | 只看该作者

多谢LS

现在基本清楚点了 ~!~

使用特权

评论回复
5
lbx_00| | 2008-4-29 19:23 | 只看该作者

数据的意义要在指令里综合考虑

使用特权

评论回复
6
along1980| | 2008-4-29 22:39 | 只看该作者

right

正解

使用特权

评论回复
7
cliffliu| | 2008-4-29 23:51 | 只看该作者

95年学的8051,多年不搞汇编了

任何一条汇编语句都对应一个指令,而这个指令是否需要数据要看怎样的汇编语句,所以要分析一条语句必须将指令和数据一起分析,只分析数据是看不出什么的。
举例: NOP   机器码 00  只有指令没用数据
       MOV  A,#data     机器码 47xx  指令码47 数据XX

   MOV A Rn和MOV A @Ri  只有指令没用数据,但是他们的指令码是不同的,指令译码器靠解析指令码,然后确定Ri里的数据是RAM地址还是寄存器


使用特权

评论回复
8
niuniu1983| | 2008-4-30 20:25 | 只看该作者

偶觉得,寄存器内容相同,但是,编译器会根据这两个不同

的指令翻译成不同的机器码。从而执行不同的操作


偶也是菜菜

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

40

主题

318

帖子

0

粉丝