Escrevendo um fluxo de valores de 9 bits como bytes em um arquivo em C

Eu tenho uma matriz com valores inteiros de 0-511 (9 bits no máximo). Estou tentando escrever isso em um arquivo comfwrite.

Por exemplo, com a matriz:

[257, 258, 259]
Which is 100000001, 100000010, 100000011

I am trying to write
100000001100000010100000011 + extra padding of 0s to the file 

Mas como os limites de gravação gravam 1 byte de cada vez, não tenho certeza de como fazer isso. Eu sou novo em operações bit a bit e não sou como separar os bytes individuais.

questionAnswers(2)

yourAnswerToTheQuestion