The code is a multistep code, i.e. the change from one position to another can cause a shift of several bits.
Scanning this code on a code disc would generate a problem, as due to process tolerances changes in the different tracks would not occur simultaneously. As a consequence invalid position values could be given.
The table below makes this problem clear: the change from position 7 into position 8. If bit 23 altered state before bits 20, 21 or 23 then all bits would be dark resulting in an value of 15 being given. The solution is a one step code; for example gray-code.