in reply to LZW Demystified
The first char is emitted as simply that, an 8 bit value. Following that point all codes are emitted in longer than 8 bit form (starting with 9 bits until the table grows to have 512 values, then to 10 bits etc.).
A historical side-note: Years back I was doing some patent analysis, and read the Unisys LZW patent carefully several times.
Expanding the table to increasing the output byte width is Welch's improvement to the Lempel-Ziv compression algorithm, and this is what Unisys obtained a patent on. If you crippled your compression such that the table never grew past 256 values, you weren't infringing (in my "Not A Lawyer" opinion). Unisys allowed some FUD to surround this issue, not correcting the impression that it was GIF they held a patent on. Not so.