??? 03/24/06 15:57 Read: times |
#112984 - Or another portable solution? Responding to: ???'s previous message |
unsigned char OddParity(unsigned char b) { b ^= b >> 4; b ^= b >> 2; b ^= b >> 1; return (~b & 1); } Or if you also need even parity elsewhere: #define ODD_PARITY(b) (EvenParity(b) ^ 1) unsigned char EvenParity(unsigned char b) { b ^= b >> 4; b ^= b >> 2; b ^= b >> 1; return (b & 1); } |