打印

movff PLUSW1,FSR0

[复制链接]
2141|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huangxz|  楼主 | 2013-4-10 23:29 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本题是关于汇编的题目
#include <P18F26J11.INC>

        LIST   P=PIC18F26J11

        CONFIG XINST = OFF
       


Delay1 res 1;reserve 1 byte for the variable Delay1
Delay2 res 1;reserve 1 byte for the variable Delay2

        org 0; start code at 0

Start:
        movlb 2
        movlw 0x75
        movwf 0x4,BANKED

        lfsr FSR0,0x205
        lfsr FSR1, 0x200
        movlw 0x4

        movff PLUSW1,FSR0

        end


执行movff PLUSW1,FSR0时,FSR0 = 0x205
为啥不是改变ram[0x205]里面的值,而改变的是ram[0]里面的值呢
诚求专家解答,谢谢。
沙发
huangxz|  楼主 | 2013-4-11 23:04 | 只看该作者
程序很简单,各位老大帮忙看看啊

使用特权

评论回复
板凳
lanyong| | 2013-4-12 21:02 | 只看该作者
以w值为指针地址偏移,所指内容移动至fsr0.

使用特权

评论回复
地板
lanyong| | 2013-4-12 21:04 | 只看该作者
应该是204移动到205啊

使用特权

评论回复
5
lanyong| | 2013-4-12 21:08 | 只看该作者
有点绕,应该是指针1的内容赋给fsr0

使用特权

评论回复
6
huangxz|  楼主 | 2013-4-12 23:16 | 只看该作者
lanyong 发表于 2013-4-12 21:08
有点绕,应该是指针1的内容赋给fsr0

实际情况是ram[205]的值没有改变,不信你可以试试,我用的是mplab8.90

使用特权

评论回复
7
lanyong| | 2013-4-13 12:39 | 只看该作者
晕倒,你用错了。

好多年没弄汇编了,搞了我半天,哈哈。

movff PLUSW1,INDF0

应该用indf0.

使用特权

评论回复
8
huangxz|  楼主 | 2013-4-13 13:39 | 只看该作者
lanyong 发表于 2013-4-13 12:39
晕倒,你用错了。

好多年没弄汇编了,搞了我半天,哈哈。

呵呵,谢谢啊.为啥不用汇编呢,我觉的汇编可以更加透彻的理解芯片

使用特权

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

本版积分规则

个人签名:醒来才发现,一切都是一场梦

170

主题

4893

帖子

11

粉丝