Ich habe nun ein wenig Code geschrieben, der aber nicht so will wie ich das möchte:

Code:
; PIC auswaehlen
	list p=16f628a 

;---------------------------------------------------------------------------------

; Include Datei fuer PIC	
	#include <p16f628a.inc>

;---------------------------------------------------------------------------------

; Config Word
; Im Config Word werden Parameter gesetzt die in der *.inc Datei vordefiniert sind.
; Dort stehen alle Funktionen die Verfuegbar und aufrufbar sind
                                 
            	__config _MCLRE_ON & _PWRTE_OFF & _XT_OSC & _WDT_OFF

;---------------------------------------------------------------------------------
	
; Adressen deklarieren
	
	; EEPROM lesen
	; In diesem Beispiel wird der Wert aus der EEPROM-Adresse 0x00 benoetigt
	; Dafuer wird die Adresse in das EEPROM-Adressregister geschrieben
	BANKSEL	EEADR		; In Bank mit Register EEADR wechseln
	MOVLW	0x00		; EEPROM-Adresse 0x00 
	MOVWF	EEADR		; EEPROM-Adresse in Register schreiben

	; Jetzt wird im EECON1-Register das EEPGD-Bit (Bit 7) geloescht
	; und das RD-Bit (Bit 0) gesetzt. Damit wird der Inhalt der EEPROM
	; Speicherstelle ins EEDATA-Register kopiert.
	BCF	EECON1, 7	; Loeschen EEPGD-Bit
	BSF	EECON1, 0	; Setzen RD-Bit

	; Jetzt wird das Bitwort aus dem EEDATA-Register in das
	; Arbeitregister W gelesen
	MOVF	EEDATA, W	; EEDATA-Register einlesen
	MOVWF	0x20

	
	
end
Der Code funktioniert bis dahin wo er die Adresse im Arbeitsregister hat. Wenn ich aber dann sage das er den Inhalt in die Adress 0x20 schreiben soll, will er immer in die Adresse 0x0A0 schreiben.....
KAnn hier jemand einen Fehler ekennen???