hex_bit.py 673 B

123456789101112131415161718192021222324252627282930313233343536
  1. #!/usr/bin/env python
  2. # -*- encoding: utf-8 -*-
  3. def a_bit(data, i):
  4. if i == 1:
  5. return data & 0x01
  6. if i == 2:
  7. return (data & 0x02) >> 1
  8. if i == 3:
  9. return (data & 0x04) >> 2
  10. if i == 4:
  11. return (data & 0x08) >> 3
  12. if i == 5:
  13. return (data & 0x10) >> 4
  14. if i == 6:
  15. return (data & 0x20) >> 5
  16. if i == 7:
  17. return (data & 0x40) >> 6
  18. if i == 8:
  19. return (data & 0x80) >> 7
  20. def hex_bcd(data):
  21. s = data // 16
  22. g = data % 16
  23. c = s * 10 + g
  24. return str(c)
  25. def bcd_hex(data):
  26. int_data = int(data)
  27. s = int_data // 10
  28. g = int_data % 10
  29. c = s * 16 + g
  30. return c