Even–Rodeh coding
Even–Rodeh code is a universal code encoding the non-negative integers developed by Shimon Even and Michael Rodeh.
Encoding
To code a non-negative integer in Even–Rodeh coding:- If is not less than 4 then set the coded value to a single
0bit. Otherwise the coded value is empty. - If is less than 8 then prepend the coded value with 3 bits containing the value of and stop.
- Prepend the coded value with the binary representation of.
- Store the number of bits prepended in step 3 as the new value of.
- Go back to step 2.
- Read 3 bits and store the value into.
- * If the first bit read was
0then stop. The decoded number is. - * If the first bit read was
1then continue to step 2. - Examine the next bit.
- * If the bit is
0then read 1 bit and stop. The decoded number is. - * If the bit is
1then read bits, store the value as the new value of, and go back to step 2.