Hi Dave!
Thanks for your explanation.
I have managed to find a solution for this data structure.
Code:
head = 4 bits
data_base[32-30] = 3 bits
pause_bit = 1 bit
data_base[29-15] = 15 bits
pause_bit = 1 bit
data_base[14-0] = 15 bits
pause_bit = 1 bit
Here it is:
Code:
return (addr[0] & 0x06) << 29 |
(addr[1] & 0xFF) << 22 |
(addr[2] & 0xFE) << 14 |
(addr[3] & 0xFF) << 7 |
(addr[4] & 0xFE) >> 1;
Pretty interesting way of thinking. I have learnt a lot from this problem.
Thank you Dave. Thank you Salem!
Mas