zrong 发表于 2017-5-7 12:53:03

解码编码Python HDB3 AMI 编码与解码

  今天一直在研究解码编码之类的问题,下午正好有机会和大家分享一下.

1 # -*- coding: cp936 -*-
2 pre_n = '010010000100001100000000000000000000000001010001001001001010000101'
3 print '编码进程……………………'
4 length = len(pre_n)
5 pre_list = list(pre_n)
6 for ch in range (0,length):
7   pre_list = int (pre_list)
8 store_list = pre_list
9 print pre_list
10 ich = -1 ;
11 for ch in range (0,length):
12   if pre_list == 1 :
13         ich = ich * (-1)
14   pre_list = pre_list*ich;
15 print pre_list
16 pre_flag_num = 0;
17 flag_zero = 0;
18 for ch in range (0,length):
19   if pre_list <> 0 :
20         flag_num = pre_list;
21         flag_zero = 0;
22   else:
23         flag_zero += 1;
24   if flag_zero == 4 :
25         if flag_num == pre_flag_num :
26             pre_list = flag_num * -1;
27             pre_list = flag_num * -1;
28             pre_flag_num = flag_num * -1;
29             for ch_temp in range(ch+1,length):
30               pre_list = pre_list * -1
31         else:
32             pre_list = flag_num ;
33         pre_flag_num = pre_list;
34         flag_zero = 0;
35 print pre_list,'\n 解码进程………………'
36 flag_zero = 0;
37 for ch in range (0,length):
38   if flag_zero == 2 :
39         if flag_num == pre_list:
40             flag_zero = 0
41             for ch_temp in range(ch-3, ch+1):
42               pre_list = 0;
43   if flag_zero == 3 :
44         if pre_list <> 0 :
45             flag_zero = 0;
46             for ch_temp in range(ch-3, ch+1):
47               pre_list = 0;
48   if pre_list <> 0 :
49         flag_num = pre_list
50         flag_zero = 0;
51   else:
52         flag_zero += 1;
53   pre_list = abs(pre_list)
54 print pre_list
55 if pre_list is store_list:
56   print "Successed ..."

  文章结束给大家分享下程序员的一些笑话语录: 程序员打油诗   
  写字楼里写字间,写字间里程序员;
  程序人员写程序,又拿程序换酒钱。
  酒醒只在网上坐,酒醉还来网下眠;
  酒醉酒醒日复日,网上网下年复年。
  但愿老死电脑间,不愿鞠躬老板前;
  奔驰宝马贵者趣,公交自行程序员。
  别人笑我忒疯癫,我笑自己命太贱;
  不见满街漂亮妹,哪个归得程序员。
页: [1]
查看完整版本: 解码编码Python HDB3 AMI 编码与解码