bit storing as byte

I have Input will pass argument

First will be address : 0001
second will be no of bits to be read :0032

My data should read from 01 address to 50 bit of data.

I have length of bits to be read 32.
total no of byte = 32/8 = 6 byte

I would like to store as below. where bits represent digital status of digital pins either 0 or 1

Byte_Addr[0]={bit1,bit2,bit3,bit4,bit5,bit6,bit7,bit8}
Byte_Addr[1]={bit1,bit2,bit3,bit4,bit5,bit6,bit7,bit8}
Byte_Addr[2]={bit1,bit2,bit3,bit4,bit5,bit6,bit7,bit8}
Byte_Addr[3]={bit1,bit2,bit3,bit4,bit5,bit6,bit7,bit8}
Byte_Addr[4]={bit1,bit2,bit3,bit4,bit5,bit6,bit7,bit8}
Byte_Addr[5]={bit1,bit2,bit3,bit4,bit5,bit6,bit7,bit8}

I need simple code to store these bits values to form byte and pack them properly .
if request is from 01 to no of data same data only should print,