Comprobacion
CLRF usuario ;Registro que mantiene a el numero de usuario
incf usuario,f
movlw Codigo_usuario_1
movwf fsr ;Para 8 usuarios si las contraseñas las tenes en registros ( para que se puedan cambiar) cargo el puntero al primer registro
loop
movf indf,w ; Aqui tomo lo que apunta esa direccion
subwf Codigo_ingresado ; Comparo Codigo_usuario_1 con Codigo_ingresado
btfsc status,z ; Son iguales? , si son iguales Z = 1,
return ; Si son iguales vuelvo, el numero de usuario va a estar en "usuario"
incf fsr,f
incf usuario,f ;incremento el usuario y el lugar donde estaba guardado
movlw 0x05
subwf usuario,w ; Resto para ver si llego a todos los usuarios, es decir los 4
btfss status,z
goto loop ; No llego a hacer todos los usuarios, entonces sigo por el proximo
clrf usuario ; De pasar por todos los codigos guardados y no cincidir con ningun, usuario va a ser igual a 0, de esa forma saber que no coincidio
return