;       CONSIDERAZIONI SUI BANCHI DI REGISTRI E LE VARIABILI
;       
;	    di Walter Giocoso
;	    http://digilander.iol.it/wgiocoso
;
;       Nel PIC16F84 i banchi 0 e 1 fanno accedere agli stessi registri per uso 
;       generico (GPR)
;       Nel PIC16F876 ognuno dei 4 banchi possiede dei registri per uso generico
;       distinti.
;       Se caricate questo programma in un simulatore come PICSIMULATOR IDE, vedrete 
;       che il valore della variabile CONT (=0AH), scritta nella locazione 20H, 
;       cioè nel banco 0 verrà copiata nel registro W solo nel primo caso, quando viene 
;       indirizzato il banco 0
;---------------------------------------------------------------------------------------



        PROCESSOR   16F876
	    __CONFIG    3FF1H
	    RADIX 	    DEC
	    INCLUDE     "P16F876.INC"
	    ERRORLEVEL  -302
	
	
	
        ORG	        20H		            ;prima locazione registri per uso generico

CONT    RES         1                   ;variabile di conteggio        

        ORG         00H                 ;prima locazione area programma
        
        MOVLW       0AH
        MOVWF       CONT

        MOVLW       0
        BCF         STATUS, RP0         ;banco 0
        BCF         STATUS, RP1         ;==
        MOVF        CONT,   0           ;il registro W adesso conterrà 0AH
         
        MOVLW       0
        BSF         STATUS, RP0         ;banco 1
        BCF         STATUS, RP1         ;==
        MOVF        CONT,   0           ;in questo caso CONT non verrà copiato in W
        
        MOVLW       0
        BCF         STATUS, RP0         ;banco 2
        BSF         STATUS, RP1         ;==
        MOVF        CONT,   0           ;in questo caso CONT non verrà copiato in W        

        MOVLW       0
        BSF         STATUS, RP0         ;banco 3
        BSF         STATUS, RP1         ;==
        MOVF        CONT,   0           ;in questo caso CONT non verrà copiato in W

        
        END
