One thing that I notice right off of the bat is that you have three distinct values that you're trying to store. One bit is not sufficient for storage as it only has two states. You could use trinary, where each tit (bit is short for binary digit, so tit is short for trinary digit, I guess) could have values of 0, 1, or 2. Also, are conditions A, B, and C mutually exclusive? If not, then you need even more storage, as setting the tit for one value will clober what was there. I would advise against using tits, however, as you lose the usefullness of such operators as
<< and
& for masking operations.
thor