Мною написан скрипт для расчета lookup таблиц и вычисления контрольной суммы для CRC-16/CRC-32.
Скрипт работает хорошо, но хотелось бы привести его к нормальному состоянию, так сказать без костылей )))
Первый костыль, который я применил касается сабжа. Функция:
def reverse_poly(indata): mirror_list = [] for i in bin(indata): mirror_list.append(i) reverse = mirror_list[2:] reverse.reverse() Polynomial_rev = 0 cnt = Width for i in reverse: cnt -= 1 if i == '1': Polynomial_rev += 2**cnt return(Polynomial_rev)
Пожалуйста, проконсультируйте, как это делается правильно на python.
Спасибо!