1#!/usr/bin/env python 2 3# Reverse the binary of thesebarker codes for the host code 4barkers = (0x0d, 0x72) 5distances = [] 6corrections = [] 7 8def count_bits(x): 9 i = 0 10 while x: 11 i += 1 12 x &= x - 1 13 return i 14 15for i in range(128): 16 diffs = [(count_bits(barkers[0] ^ i), barkers[0]), 17 (count_bits(barkers[1] ^ i), barkers[1])] 18 diffs.sort() 19 distances.append(diffs[0][0]) 20 corrections.append(diffs[0][1]) 21 22print "Barker distance:", distances 23print "Barker correct:", ["0x%x" % c for c in corrections] 24