打印
[PIC®/AVR®/dsPIC®产品]

关于PIC16f73快速操作区问题

[复制链接]
1304|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 416775364TP 于 2019-5-9 13:58 编辑

手册里面如图,没搞懂其快速操作区到底在哪儿?是手册有问题么? 这个片子RAM 192byte,是不是不存在快速操作区

英文xxxxxx.png (41.26 KB )

英文xxxxxx.png

中文11111.png (31.33 KB )

中文11111.png

使用特权

评论回复
沙发
martin| | 2019-5-9 16:50 | 只看该作者
本帖最后由 martin 于 2019-5-9 16:51 编辑

如果变量地址定义在20H - 7FH,访问120H - 17FH相当于访问20H - 7FH,BANK2那里的寄存器实际上是映射到BANK0的。同理,BANK3的那一段是映射到BANK1的。所谓快速操作区,意思是在写汇编代码时,如果当前BANK处在BANK2,接下来要访问位于BANK0的20H-7FH的寄存器,这时不用切换BANK了。同一个数据手册,你应该可以看到16F76的快速操作存储区是70H - 7FH,这个区域是4个BANK都映射到同一个地方的,所以定义在70H-7FH里的变量,访问它时不需要考虑当前处于哪个BANK。
说了这么些,其实现在用汇编的人已经很少很少了,用C编译,这些都是不需要关心的,C编译器会帮你最优化地存储变量并优化访问。

使用特权

评论回复
板凳
CoolSilicon| | 2019-5-9 17:15 | 只看该作者
martin 发表于 2019-5-9 16:50
如果变量地址定义在20H - 7FH,访问120H - 17FH相当于访问20H - 7FH,BANK2那里的寄存器实际上是映射到BANK ...

老师说的对!

使用特权

评论回复
地板
小灵通2018| | 2019-5-9 23:55 | 只看该作者
不同的内存区域。

使用特权

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

本版积分规则

认证:兴储世纪科技股份有限公司+软件工程师
简介:本人从事电源行业10年有余,主要从事过UPS软件开发及维护、车载OBC软件开发、300-3000W高频逆变器软件开发、工频逆控一体机软件开发、便携式交直流电源软件开发.

72

主题

744

帖子

6

粉丝