What is the best way to shift data by X bits into and out of a file?
问题 I have a dataset, made up of a mask file, and a data file. the mask file tells the decoder whether there are 8 bits per field present, or 4, for the current offset of the datafile. I need to shift the data out according to the mask, and write the decoded file, with all 8 bits per field. I'm trying to accomplish this in C. void shift_4bits_left(unsigned char* array, unsigned short size) { int i; unsigned char shifted = 0x00; unsigned char overflow = (0xF0 & array[0]) >> 4; for (i = (size - 1);