PIC直接寻址和间接寻址

[复制链接]
5542|8
 楼主| 它山之石 发表于 2013-3-19 11:31 | 显示全部楼层 |阅读模式
本帖最后由 它山之石 于 2013-3-19 14:59 编辑



如上图是间接寻址实现0X20和0X21单元的清零.用的是间接寻址的方式。

我的疑问是,用直接寻址不行么,不能直接 CLRF 0X20;CLRF 0X21;吗?为什么弄个间接的?求指点。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
谈的元 发表于 2013-3-19 22:17 | 显示全部楼层
直接寻址可以,太多的清除用间接寻址循环方便
diweo 发表于 2013-3-21 19:08 | 显示全部楼层
在这种简单的情况下,直接寻址当然是可以的。不过,在某些情况下用间接寻址更简洁有效。
比如,这里你知道要操作的内存单元为2个,但是如果有100个呢?难道代码复制100次?或者事先不知道次数,而是由另一个变量指定呢?
youss 发表于 2013-3-22 06:31 | 显示全部楼层
本帖最后由 youss 于 2013-3-22 06:34 编辑

你这是简单的例子, 在对多个寄存器连续取数时就该用到了,可以使程序更简洁! 下面是4个(也可有更多的应用--如将几十个串口接收数据存入寄存器...)例子:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 它山之石 发表于 2013-3-22 16:13 | 显示全部楼层
谈的元 发表于 2013-3-19 22:17
直接寻址可以,太多的清除用间接寻址循环方便

理解了 多谢指点
yewuyi 发表于 2013-3-23 09:42 | 显示全部楼层
基本所有的MCU都带间接寻址和直接寻址操作,你只要上个大学的单片机课程,按道理就不应该问这样的问题。
 楼主| 它山之石 发表于 2013-3-25 08:34 | 显示全部楼层
yewuyi 发表于 2013-3-23 09:42
基本所有的MCU都带间接寻址和直接寻址操作,你只要上个大学的单片机课程,按道理就不应该问这样的问题。 ...

大学玩游戏了。Ye总。
yewuyi 发表于 2013-3-25 09:30 | 显示全部楼层
它山之石 发表于 2013-3-25 08:34
大学玩游戏了。Ye总。

还好还好,不是光OOXX就还有得救。
weixinglu 发表于 2013-3-25 11:11 | 显示全部楼层
3楼正解。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:<img src="static/image/smiley/comcom/3.gif" class="vm">

95

主题

547

帖子

4

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