2019-07-18 11:46发布
heshijie416 发表于 2015-9-30 11:05 抱歉,这几天一直没上,刚看到。。。我看教程说,不写的话,默认是using 0,用的第一组寄存器,那么我写成using 1和默认的using 0有什么区别,我改这个参数难道只是说换组寄存器,在有寄存器坏了的情况才有用,平时其实没啥用的吗? ...
vivatakethat 发表于 2015-9-21 18:22 用来在中断函数中指定工作寄存器区,工作寄存器共有4个区。 分别代表R0~R7地址是: 第0工作区:00H~07H
武力戡乱 发表于 2015-9-23 23:29 简单的说,就是内存分配在不同的地方了。
heshijie416 发表于 2015-9-24 14:09 可是用来干啥呢?
最多设置5个标签!
不,不写不一定是0,即寄存器组0!这有时候要看编译器的优化和你的代码编写后编译情况而定!不要太纠结这个,volatile 你百度一下这个词语。 最佳答案
分别代表R0~R7地址是:
第0工作区:00H~07H
第1工作区:08H~0FH
第2工作区:10H~17H
第3工作区:18H~1FH
using n,那么n就是第几区,使用方法如下:
void exterint0() interrupt 0 using 1
这表示外部中断0使用第1工作区地址。
那么这样做有啥用呢?能实现什么功能?
可是用来干啥呢?
寄存器速度快,ram慢一些。但是ram中的值会被时时检测而寄存器不同!
一周热门 更多>