def diff_Manchester(message): output = [] c = -1 b = text2binary(message) for i in range(len(b)): if i == 0: if b[0] == '0': output.append(1) output.append(-1) c += 2 elif b[0] == '1': output.append(-1) output.append(1) c += 2 elif b[i] == '0': if output[c] == -1: output.append(-1) output.append(1) c += 2 elif output[c] == 1: output.append(1) output.append(-1) c += 2 elif b[i] == '1': if output[c] == 1: output.append(-1) output.append(1) c += 2 elif output[c] == -1: output.append(1) output.append(-1) c += 2 return output
def NRZ_L(message): output1 = [] for b in text2binary(message): if b == '0': output1.append(1) else: output1.append(-1) return output1
def Manchester(message): output = [] for x in text2binary(message): if (x == '0'): output.append(1) output.append(-1) else: output.append(-1) output.append(1) return output
def polarRZ(message): output = [] for x in text2binary(message): if (x == '0'): output.append(-1) output.append(0) else: output.append(1) output.append(0) return output
def HDB_3(message): output = [] b = text2binary(message) #b = "110000" change = 1 i = 0 #"110000 0000 1100001001" c = 0 # counter while (i < len(b)): if (i <= (len(b) - 4) and b[i] == '0' and b[i + 1] == '0' and b[i + 2] == '0' and b[i + 3] == '0' and i != 0): if (change == -1): if (c % 2 == 1): output.append(0) output.append(0) output.append(0) output.append(1) change = -1 else: output.append(-1) output.append(0) output.append(0) output.append(-1) change = 1 else: if (c % 2 == 1): output.append(0) output.append(0) output.append(0) output.append(-1) change = 1 else: output.append(1) output.append(0) output.append(0) output.append(1) change = -1 c = 0 i += 4 elif (b[i] == '0'): output.append(0) i += 1 else: output.append(change) i += 1 if (change == 1): change = -1 c += 1 else: change = 1 c += 1 return output
def NRZ_I(message): output2 = [] flag = 1 for b in text2binary(message): if (b == '1'): if (flag == 1): flag = -1 else: flag = 1 output2.append(flag) else: output2.append(flag) return output2
def pseudoternary(message): output = [] change = 1 for x in text2binary(message): if (x == '1'): output.append(0) else: output.append(change) if (change == 1): change = -1 else: change = 1 return output
def twoBoneQ(message): output3 = [] b = text2binary(message) # pls check the output of 2b1q !!! for i in range(0, len(b) - 1, 2): if (i == 0): if (b[0] == '0' and b[1] == '0'): output3.append(1) output3.append(1) elif (b[0] == '0' and b[1] == '1'): output3.append(2) output3.append(2) elif (b[0] == '1' and b[1] == '0'): output3.append(-1) output3.append(-1) elif (b[0] == '1' and b[1] == '1'): output3.append(-2) output3.append(2) elif (b[i] == '0' and b[i + 1] == '0'): if (output3[i - 1] > 0): output3.append(1) output3.append(1) else: output3.append(-1) output3.append(-1) elif (b[i] == '0' and b[i + 1] == '1'): if (output3[i - 1] > 0): output3.append(2) output3.append(2) else: output3.append(-2) output3.append(-2) elif (b[i] == '1' and b[i + 1] == '0'): if (output3[i - 1] > 0): output3.append(-1) output3.append(-1) else: output3.append(1) output3.append(1) elif (b[i] == '1' and b[i + 1] == '1'): if (output3[i - 1] > 0): output3.append(-2) output3.append(-2) else: output3.append(2) output3.append(2) return output3
def B8ZS(message): output = [] b = text2binary(message) change = 1 i = 0 while (i < len(b)): if (i <= (len(b) - 8) and b[i] == '0' and b[i + 1] == '0' and b[i + 2] == '0' and b[i + 3] == '0' and b[i + 4] == '0' and b[i + 5] == '0' and b[i + 6] == '0' and b[i + 7] == '0' and i != 0): if change == -1: output.append(0) output.append(0) output.append(0) output.append(1) output.append(-1) output.append(0) output.append(-1) output.append(1) i += 8 else: output.append(0) output.append(0) output.append(0) output.append(-1) output.append(1) output.append(0) output.append(1) output.append(-1) i += 8 elif (b[i] == '0'): output.append(0) i += 1 else: output.append(change) i += 1 if (change == 1): change = -1 else: change = 1 return output
def MLT_3(message): output = [] b = text2binary(message) flag = -1 for i in range(len(b)): if i == 0: if b[0] == '0': output.append(0) else: output.append(1) elif b[i] == '0': output.append(output[i - 1]) else: if output[i - 1] == 1 or output[i - 1] == -1: output.append(0) else: if flag == 1: output.append(-1) flag = -1 else: output.append(1) flag = 1 return output