如何在PIC​​(18F452)的汇编中操纵某些寄存器?

时间:2019-03-20 12:49:16

标签: assembly pic

我有一个名为TEST的寄存器,我想反转(切换?)第1位和第2位,并且还对第3位和第4位置零。

我刚刚开始学习汇编,但是我不知道如何检查我的解决方案是否完全正确,请问我是否处在正确的轨道上?

这是我的建议:

movlw B'00000010' ;toggles/inverts the bit 1

xorwf TEST,F

movlw B'00000100' ;toggles/inverts the bit 2

xorwf TEST,F

bsf   TEST, 3, 0 ;Sets the bit 3 to zero

bsf   TEST, 4, 0 ;Sets the bit 4 to zero

1 个答案:

答案 0 :(得分:0)

BSF并没有清除。

movlw B'00000110' ;toggles/inverts the bit 1 and 2
xorwf TEST, F
bcf   TEST, 3     ;put zero to bit 3 
bcf   TEST, 4     ;put zero to bit 4

否则,您可以使用ANDWF指令将位设置为零

molw   0b11100111   
andwf  TEST, F                ;put bit 3 and 4 to zero