Si mal no recuerdo la explicación de mi profesor al respecto , porque en esa clase me fui de pesca y regresé con un cachalote.
El registro INDF no es un registro físico, es decir realmente no es una localización de memoria como FSR, o cualquier TRIS, sino que se utiliza para el direccionamiento por referencia y ortogonal del resto de la memoria, al escribir en INDF, la unidad de control toma el dato que está en W y lo escribe en la localización de memoria correspondiente al valor almacenado en SFR, algo parecido pasa con las lecturas.
Esto normalmente se haría complicando la unidad de control del procesador y creando unas cuantas instrucciones más, pero para mantener la ortogonalidad y el set de instrucciones es que se utiliza esta técnica, así usted sigue utilizando "movwf indf" (escritura) y "movfw indf" (lectura) como en el resto de las instrucciones lo que en vez de colocar directamente la localización de memoria a la que accede utiliza un registro puntero SFR y un "registro" especial para esta operación también especial INDF.
PD0: irse de pesca en clase es dormirse encima de la mesa o pupitre
PD1: si en esto hay algún disparate es mío, no de mi profesor, recordar que no estuve presente todo el tiempo porque la pesca del cachalote lleva tiempo.
Un saludo Reinier