Can you explain what this C macro is for? The correct answer will include the type of data it operates on, how it is represented to the macro, and what the macro does to it. I will post a clue tomorrow and the answer after dorkbot on Monday. You can also ask me about it at dorkbot. Feel free to discuss it here on blabber. I will reply if someone posts a complete enough answer but expect me to remain silent otherwise.
#define DATA_L(x) (((x&0x0000000FLU)?1:0)\
+((x&0x000000F0LU)?1:0)\
+((x&0x00000F00LU)?1:0)\
+((x&0x0000F000LU)?1:0)\
+((x&0x000F0000LU)?1:0)\
+((x&0x00F00000LU)?1:0))
#define DATA_C(x) (((x&0x00000002LU)?1:0)\
+((x&0x00000020LU)?2:0)\
+((x&0x00000200LU)?4:0)\
+((x&0x00002000LU)?8:0)\
+((x&0x00020000LU)?16:0)\
+((x&0x00200000LU)?32:0))
#define DATA_6(x) (((x&0x00F00000LU)?4:0)\
+ ((((x&0x00F00000LU)?1:0) & ((x&0x00000002LU)?0:1))?2:0))
#define DATA(d)((uint8) (d==0)?7:DATA_L(0x##d##LU)\
+ (DATA_C(0x##d##LU) << 8 - DATA_L(0x##d##LU))\
- DATA_6(0x##d##LU))