MOV 是访问片内的RAM和SFR时用的
MOVX 是访问片外的RAM用的
还有一个MOVC, 是访问 ROM时用的。
51采用的哈佛结构,有许多的地址是重复的。
比如说 一个地址是 0x88, 在ROM里有这个地址,内部的RAM里有这个地址,SFR里有这个地址,外部RAM里也有这个地上,究竟是访问哪一个呢,就要用指令来实现。
如果是MOV 间接寻址,就是访问内部的RAM
如果是MOV直接寻址,就是访问SFR
如果是MOVX 寻址,就是访问外部RAM
如果是MOVC寻址,就是访问ROM
wolf兄回答很详细了,我不是来抢镜头的,我只是来通俗比喻一下的
简单的说,你家里有个保险柜存着钱,银行也有个保险柜存了你的钱。
那么,你从自家保险柜取钱,就是内部的,用MOV
你从银行保险柜取钱,就是外部的,用MOVX
保险柜,代表存储器,也就是RAM
你家,代表单片机
银行,代表单片机外部连接的存储芯片
钱,就是数据
想必很好理解才对
这里要说明的是
很多增强型单片机,在芯片内部扩展了外部RAM
很绕口是吧
也是很好理解的
别看51芯片那么大,其实里面真正的单片机是非常小非常小的
做成那么大,是封装的需要
里面空间还是很多的
所以呢,厂家就把本来应该扩展在外部的外部存储器及其电路
塞到单片机的封装里面去了
咳咳,就这么简单,你知道得太多了hoho
千万
千万
千万别采纳我
重申一遍我不是来抢风头的
刚刚还有个孩子被我抢了风头,就来找我麻烦呢,
偶这是避祸哈哈~