永发信息网

最近刚学PIC单片机,有个程序看不懂,请高手帮下,越详细越好:

答案:1  悬赏:80  手机版
解决时间 2021-04-29 03:55
最近刚学PIC单片机,有个程序看不懂,请高手帮下,越详细越好:
最佳答案
INDF 和 FSR两个寄存器构成了一个间接寻址的作用。
FSR有点像C语言中的指针,INDF是一个虚拟的寄存器,对它操作其实是对FSR锁指向的内存单元操作。
简单的说,当20h这个数赋给了FSR,那么就是FSR作为指针指向了内存中地址为20h的这个单元(以下就用<20h>来表示这个单元,以区别十六进制的20h这个数值),此时INDF就被映射到<20h>。
从头说起:
1:W被赋值20h这个数;2:FSR被赋值和W寄存器相同的数20H,此时FSR指向了<20h>;3:此时W寄存器因为没被改变过,所以其数值依然是十六进制的20h那么MOVWF 20H其实就是把W里的数据赋值给<20h>这个内存单元 也就是 <20h> = 20H ;
4:重点来了 INCF INDF,让INDF自加1。前面说了对INDF操作其实就是对FSR所指向的单元操作,也就等同于 INCF <20h>(真正程序里不能这么写的,因为<20h>这杨写法是错误的) 类似C与语言中的<20h>++
5:FSR自加1,FSR内部的值等于21h所以FSR指向了<21h>这个内存单元。
6:<20h>单元的数值高4位和低4位转换一下数据。所以 <20h> = 02h
7:把<20h>的内容赋值给W寄存器,所以w = 02h
8:FSR此时 等于21h ,把21h和W的02h做与运算,结构 0 赋值给FSR。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
QQ宠物多少级可以结婚丫?结婚了可不可以离婚
异地恋,男友喜欢上别人。但是也还爱我。他说
现在QQ音速进房间没下面这些了吗?
江阴哪里拍写真会比较好点
天起休闲大酒店我想知道这个在什么地方
朋友会因为距离淡化吗
我的脸上有指甲痕.很多年了.可很丑.有方法去
问问可以用手机点亮吗
玉米烫是电头发吗
花溪歪歪砂锅屋龙里分店怎么去啊,有知道地址
自由幻想 天外烟罗衣 品质升级
钱整多少就够了
为什么我的QQ炫舞打不开?,它说“由于一个软
无锡到姜堰要多长时间
最近有没有好看的动漫啊
推荐资讯
CF老是死机
南京卡拉OK培训最好的是哪家?
电吉他的效果器大约多少钱
信基督的女孩子最喜欢什么样的浪漫?
高分求助!MAYA 完整版下载地址!(最好简体
如何短时间突破短跑
跪求冲年费黄钻的好友
此图出自什么动漫~!?
请问你的corega usb 11mini驱动怎么装的?
小崔特色爆炒园怎么去啊,有知道地址的么
关于星星的名句,要关于星星的名人名言啊~~
IBM xseries 236服务器老是TEMP和PCIB报警,现
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?