;======================================================================= ; CONSIDERAZIONI SUL REGISTRO W ; ; Il registro W serve a gestire lo scambio dati tra registri. ; Tuttavia non è possibile eseguire su di esso operazioni ; che agiscono sui bit, come BSF, BCF, BTFSS, BTFSC ; Ecco un semplicissimo programma da provare al simulatore. ; Si verifica facilmente che tale programma si comporta in modo ; molto diverso da come previsto. ; Se disassemblate l'hex, noterete che al posto del registro ; W, il compilatore ha sostituito il registro INDF, portando a ; comportamenti imprevedibili. ; ; versione per tutti i PIC ; ; di Walter Giocoso ; http://digilander.iol.it/wgiocoso ; ; ; ;======================================================================== PROCESSOR 16F876A __CONFIG 3FF1H RADIX DEC INCLUDE "P16F876A.INC" ERRORLEVEL -302 ; ORG 20H ORG 00H INIZIO MOVLW 0xFF BCF W, 0 NOP NOP BTFSS W, 1 GOTO INIZIO NOP NOP END