#define LS_HI_PART(x) ((x>>4) & 0x0F)
#define LS_LO_PART(x) ((x) & 0x0F)
these are freak notations to me part(x) and ((x>>4) & 0x0F
please i need a whole explaination for this statement.
Look up bitwise operators. >> is right shift, & is bitwise and.
The second macro gives you the least significant 4 bits of an integer value and the first the next 4 bits.