Не можете ли вы использовать arr.pack () ?У него есть опции для порядка байтов.
Обновление: Хорошо. Я посмотрел на документацию, которую вы упомянули, и единственный способ заставить пример работать так:
7 2 11 9 (decimal index count)
0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 1 (bits)
4 2 0 5 (nibbles, in hex)
Ноэто будет означать, что это будет означать, что 4205 это 4 полубайта, которые вместе представляют 2 байта?Это единственный способ заставить первый байт установить второй и седьмой бит (чтение с прямым порядком байтов).
... Это скорее проблема «понимания документов», чем проблема рубина.
Таким образом, решение с массивами - это не то, что вам нужно, потому что вам нужно устанавливать отдельные биты в числе.Это лучше всего достигается с помощью (левого) сдвига битов << и or'ing |результаты вместе. </p>