You can use a LFSR[0] to efficiently (it is deterministic, minimal state) convert a sequential power of two range [0, 2^n-1] into one that appears to "randomly" walk around.
[0]: http://en.wikipedia.org/wiki/Linear_feedback_shift_register
[0]: http://en.wikipedia.org/wiki/Linear_feedback_shift_register