A bit can have two possible values, 1 or 0. There are 8 bits in a byte so a single byte can store 256 (2^8) different values, 0-255. This seems a waste when we need only have a few possible values that we need to store.
Let’s take the word “geocaching” as an example.
Converting this to ASCII values gives:
103 101 111 99 97 99 104 105 110 103
This would require 10 bytes to store on disk
As we only need the characters a-o, let’s limit our character set and assign them the numbers 0-15 so a=0, b=1, c=2 etc.
Our new values now map “geocaching” to
6 4 14 2 0 2 7 8 13 6
Which in binary would be:
As we are never using a number larger than 15, the first 4 bits in the byte will always be zero. Since we know this, we do not need to waste diskspace storing these extra zeros.
The same data that previously took 10 bytes to store now only requires 5 bytes.
Finally, we must add a header so the decompression tool knows that the blocks are 4 bits each. In this example, the data compression reduces the amount of storage required to 50% (plus 1 byte).
Now you must uncompress the following data to solve the puzzle!
Please note: You should not need any special equipment. However, sturdy shoes and clothes that you don't mind getting dirty may be best.