Advertisement
radmickey

Untitled

Nov 30th, 2022
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.93 KB | None | 0 0
  1. import hashlib
  2. m = hashlib.sha256()
  3. m.update(bytes("Радионов Михаил Леонидович HW3", "UTF-8"))
  4. b = bin(int.from_bytes(m.digest(), "big"))[2:].zfill(256)
  5. print("bit-string:")
  6. print(b)
  7.  
  8. print()
  9. a = []
  10. print("\t32bitslices")
  11. for i in range(1, 8 + 1):
  12.     print(b[32 * (i - 1): 32*i])
  13.     a.append(int('0b' + b[32 * (i - 1): 32*i], 2))
  14.  
  15. b = a[0]
  16. for i in range(1, len(a)):
  17.     b ^= a[i]
  18.  
  19. print()
  20. print("\tXOR'ed all slices")
  21. print(bin(b)[2:])
  22. print()
  23.  
  24. b = bin(b)[2:]
  25.  
  26. while len(b) != 32:
  27.     b = '0' + b
  28.  
  29. height = ['00', '01', '11', '10']
  30. lines = ['000', '001', '011', '010', '110', '111', '101', '100']
  31.  
  32. print("\t\tThe Karnaugh map")
  33.  
  34. print("     ", end="")
  35. for line in lines:
  36.     print(line, end="  ")
  37. print()
  38. print("    " + "-" * 40)
  39. for h in height:
  40.     print(f"{h}|", end="   ")
  41.     for line in lines:
  42.         i = '0b' + h + line
  43.         print(b[int(i, 2)], end='    ')
  44.     print()
  45.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement