Длина бинарного байта Erlang У меня есть двоичный файл, например: <<32,16,10,9,108,111,99,97,108,104,111,115,116,16,170,31>> Как узнать, какая длина этого пакета? Спасибо. Ответ 1 Для размера байта: 1> byte_size(<<32,16,10,9,108,111,99,97,108,104,111,115,116,16,170,31>>). 16 Для размера бита: 2> bit_size(<<32,16,10,9,108,111,99,97,108,104,111,115,116,16,170,31>>). 128 Если у вас есть битовая строка (двоичный файл с битовой длиной, не делимой на размер байта 8), byte_size/1 до ближайшего целого байта. Т.е. количество байтов, в которое помещается строка битов: 3> bit_size(<<0:19>>). 19 4> byte_size(<<0:19>>). % 19 bits fits inside 3 bytes 3 5> bit_size(<<0:24>>). 24 6> byte_size(<<0:24>>). % 24 bits is exactly 3 bytes 3 7> byte_size(<<0:25>>). % 25 bits only fits inside 4 bytes 4
Ответ 1 Для размера байта: 1> byte_size(<<32,16,10,9,108,111,99,97,108,104,111,115,116,16,170,31>>). 16 Для размера бита: 2> bit_size(<<32,16,10,9,108,111,99,97,108,104,111,115,116,16,170,31>>). 128 Если у вас есть битовая строка (двоичный файл с битовой длиной, не делимой на размер байта 8), byte_size/1 до ближайшего целого байта. Т.е. количество байтов, в которое помещается строка битов: 3> bit_size(<<0:19>>). 19 4> byte_size(<<0:19>>). % 19 bits fits inside 3 bytes 3 5> bit_size(<<0:24>>). 24 6> byte_size(<<0:24>>). % 24 bits is exactly 3 bytes 3 7> byte_size(<<0:25>>). % 25 bits only fits inside 4 bytes 4