据我所知,所有操作都是通过PIC16F中的工作寄存器完成的。在数据表中,它表示当目标位为W时,结果写入工作寄存器,当它为F时,结果写入文件寄存器。我要问的是,当目标位为F时,工作寄存器会改变,因为操作是通过它完成的吗?还是不受影响?
例如;
假设W = 3,temp = 5,temp2 = 10
INCF temp,F
DECF temp2,F
这些说明后的内容是什么?
答案 0 :(得分:0)
当某条指令的目标位为F或1时,工作寄存器W(WREG)永远不会改变! 执行指令后:
INCF temp,F
... temp
寄存器的内容增加1。
如果:
INCF temp,W
temp
寄存器的内容保持不变,结果temp + 1
存储在WREG中。
您可以使用MPLAB仿真器作为MPLAB IDE的一部分来测试asm代码的任何部分。