Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2019
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.46 KB | None | 0 0
  1. import matplotlib.pyplot as plt
  2. import math
  3.  
  4.  
  5. def hamming(wz):
  6.   coded = [0] * 7
  7.   coded[0] = wz[0] #x7
  8.   coded[1] = wz[1] #x6
  9.   coded[2] = wz[2] #x5
  10.   coded[4] = wz[3] #x3
  11.   coded[3] = coded[2]^coded[1]^coded[0] #x4
  12.   coded[5] = coded[4]^coded[1]^coded[0] #x2
  13.   coded[6] = coded[4]^coded[2]^coded[0] #x1
  14.   return coded
  15.  
  16.  
  17. def corr():
  18.     flaga = False
  19.     corrected[0] = received[4] ^ received[2] ^ received[0] #x1'
  20.     corrected[0] = received[4] ^ received[1] ^ received[0] #x2'
  21.     corrected[0] = received[2] ^ received[1] ^ received[0] #x4'
  22.  
  23.     err[0] = coded[6] ^ corrected[0] #|x1
  24.     err[0] = coded[5] ^ corrected[1] #|x2
  25.     err[0] = coded[3] ^ corrected[2] #|x4
  26.  
  27.     err_count = err[0] + (err[1] * 2) + (err[2] * 4)
  28.     if err_count == 0:
  29.         print("Nie wystepuja bledy")
  30.     else:
  31.         corrected[0] = received[4] ^ received[2] ^ received[0] #x1'
  32.         corrected[0] = received[4] ^ received[1] ^ received[0] #x2'
  33.         corrected[0] = received[2] ^ received[1] ^ received[0] #x4'
  34.  
  35.         err[0] = coded[6] ^ corrected[0] #|x1
  36.         err[0] = coded[5] ^ corrected[1] #|x2
  37.         err[0] = coded[3] ^ corrected[2] #|x4
  38.  
  39.         err_count = err[0] + (err[1] * 2) + (err[2] * 4)
  40.         if err_count == 0:
  41.             print("Nie wystepuja bledy")
  42.  
  43.         else:
  44.             print("Wystepuja bledy")
  45.  
  46.  
  47. if __name__ == "__main__":
  48.     wz = [1, 0, 1, 1]
  49.     print("Bity: ", wz)
  50.  
  51.     coded = hamming(wz)
  52.     print("Zakodowane: ",coded)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement