Die PIC18Fxxx haben 3 FSR Register 0,1 und 2 und mit denen kann man den ganzen bereich des RAM´s adressieren. Die erste Speicherstelle wird mit dem Befehl lsfr FSRx festgelegt und man kann mit POSTINC/POSTDEC die adresse nach der Ausführung des Befehls automatisch in- decrementieren lassen. Die Speicherstelle wird dann INDFx heissen. Hier ein Beispiel aus meinem Programm:
MfG
Code:
AddCB lfsr FSR0,B0 ; C+B>C
lfsr FSR1,C0
goto AddReg
AddDC lfsr FSR0,C0 ; D+C>D
lfsr FSR1,D0
AddReg bcf _Ferr ; 40 bit, (5 Bytes)
bcf _Fcrp
movlw 5
movwf ATemp
AddRegL bcf _Fcra
movf INDF0,0
addwf INDF1,0
btfsc _C
bsf _Fcra
daw
movwf INDF1
btfsc _C
bsf _Fcra
btfss _Fcrp
goto AddRegN
movlw 1
addwf INDF1,0
daw
movwf INDF1
btfsc _C
bsf _Fcra
AddRegN bcf _Fcrp
btfsc _Fcra
bsf _Fcrp
movf POSTDEC0,1
movf POSTDEC1,1
decfsz ATemp,1
goto AddRegL
btfsc _Fcra
bsf _Ferr
return
Lesezeichen