Я хочу определить 8-битную контрольную сумму по модулю 256 строки ASCII. Я знаю формулу:
checksum = (sum of bytes)%256
Как я могу сделать это в Python (манипулировать байтами)? Если я начну со строки «1c03e8», я должен вывести 0x94
. Основная проблема в том, что я не уверен, как найти сумму байтов строки ASCII. Вот основная идея того, что я ищу:
https://www.scadacore.com/tools/programming-calculators/online-checksum-calculator/
Имеет CheckSum8 по модулю 256
Я пытался:
component = ('1c03e8')
for i in range(len(component)):
checksum.append(int(float(component[i].encode("hex"))))
print checksum
print hex(int(sum(checksum)%256))
это хотя и дает мне 0x52