Например, вот ссылка на фред:
size_t fread ( void * ptr, size_t size, size_t count, FILE * stream );
Считывает массив элементов count, каждый из которых имеет размер "size bytes" ...
Так сколько бит будет читать fread(&x, 1, 1, stream)
? Восемь или CHAR_BIT
?