У меня есть 1D массив целых чисел, считанный из двоичного файла через
data = np.fromfile(file.dat, 'u1')
, где данные возвращаются
array([242, 255, 101, 0, 124, 0, 86, 0, 33, 0,
112, 0, 32, 1, 74, 1, 195, 0, 16, 0], dtype=uint8)
0's
в серии представляют дополнительные биты, используемые для значенийсверх или по стандарту 256. Например, 244
в индексе 0 должно быть -14 и представлено 255 (или 256) - 242. И наоборот, значение в индексе 13 - чтение как 32 является действительностью 256 + 32 или 288Я пытаюсь заставить приведенный выше массив выглядеть так -
[-14, 101, 124, 86, 33, 112, 288, 330, 195, 16]
Я думаю, что я хочу что-то, что использует индекс и значение для оценки предыдущего значения, если найдены значения 1 или 255.
Я начал с нижеприведенного, но потерял поток в конце дня.
for i, a in enumerate(data):
if a == 255:
neg = i,a
Если кто-то может порекомендовать лучший способ обработки двоичных значений, для которых я открытузнавать об этом также.Помощь оценена!