
typedef struct
{  
    unsigned char bit1       :  1; // see msb or lsb
    unsigned long bits2To21  : 21; // 19 bits for address or data 
    unsigned int  bits22To31 :  9; // 9 parity check bits
    unsigned char bit32      :  1; // even parity bit
} pagerMsg;

typedef union
{
    pagerMsg pagerData;
    unsigned long int frSync;
} pocSag;

void main()
{
    unsigned char aD, CRC;
    unsigned long address;
    unsigned int parity;
    pocSag data;
    data.frameSync = 0xffffffff;

    aD      = data.pagerData.bit1;
    address = data.pagerData.bits2To19;
    parity  = data.pagerData.bits22To31;
    CRC     = data.pagerData.bit32;
    while(1);

}
