For example, when a data file (streaming data, etc.) is to be transmitted in real time using a communication network, the transmission cost for performing transmission through compression is reduced. However, in such compression transmission, operations for compression and calculation for restoration, and dictionary information in case of dictionary compression are enormous, so that speed and hardware resources are consumed in real time compression transmission.
The present invention enables compression transmission and decompression to be performed remarkably quickly in this transmission.
For example, if you want to transmit arbitrary binary data of 1503986 bits (JPG file in this embodiment), the following contents are shown in binary form from the beginning as follows.
10111111111001000000000000001000001001000000000000000000100000000000000000001001000000000000010010110000000000000001111111111011011000000000100001100000000000010010000100000100100100100100100100100100001001000001000001000000010010010010010000000000010010000101100001011000010100000100000011 ....
Assuming that it is arbitrary data, if you put "10" before the most significant bit to start with "10", it is as follows. Of course, any type of binary number starting with "10" may be used in addition to "10", but for the efficiency of transmission, add the smallest "10" starting with "10". This added binary number is called a "compulsory block" and is referred to as "CH" in the present invention.
10101111111110010000000000000010000000010000000000000000001000000000000000000001000000000000000100110000000000000001111111110110110000000010010000000000000000100100000010010010010010010010010010010000100100000100100000000010010010010010000000000010010000101100001011000010100000100000011 ....
Now, in the transmission unit, the binary data is divided into binary clusters every time when the CH is scanned in the most significant bit direction from the most significant bit while the data attached thereto is encountered with "10". In the data of this embodiment, 327,156 binary clusters as shown in Table 1 were generated.
Binary cluster
10
10111111111
101
10001111111111
10000000000000000
100000
100
10
100
10001
100
100
100
10
10001
10000000000000000
10000000
10000000
100000000
100
101
1 billion
100
101
10000000000000000000111111111
101
101
1 billion
100001
1000000000000
10
... .
After the full scan of the transmission data is completed, the type and frequency of the generated binary clusters are generated in the transmission unit, and the generated information is generated by summarizing and sorting in descending frequency order. In this embodiment,
It can be seen that streaming data includes 171 kinds including CH.
First, in the compression transfer part, 171 information is sent to indicate that all data are composed of 171 kinds of binary clusters. The number of reference clusters constituting the whole data is referred to as a reference symbol number in the present invention.
Then, in Table 171, the binary clusters are successively and sequentially transmitted to the receiving unit. The binary cluster to be initially transmitted is referred to as a reference symbol binary cluster, and data of the following type is transmitted as it is.
101000101100101110011000000000001011110001 ... 1000111111111111
If the receiving unit sequentially receives the reference symbol binary cluster data, the receiving unit sequentially divides the binary cluster data according to the binary cluster dividing method, and the receiving unit precisely separates the reference symbol binary cluster data by the number of reference symbols.
Binary cluster
Appearance frequency
10
99972
1000
45706
101
27589
100
23918
1011
12541
1001
11778
100000000000
9811
10111
8747
10001
7454
10000
7082
10011
5298
100001
4309
100111
3839
101111
3755
100011
3387
1011111111
3387
100000000
2803
100000
2344
101111111111
2034
101111111
1945
10011111111
1897
100011111111
1859
10111111111
1853
1001111
1834
1000000001
1556
1000111
1488
10011111
1423
1000000000111
1305
1000011
1262
1000001
1239
1001111111
1177
1011111
1172
100111111111
1153
10001111
1081
10000000011
1010
10000000001
920
100000000011
890
10000011
821
1011111111111
802
1 billion
795
1001111111111
795
100111111
794
10000001
702
1000111111111
694
10000000
676
10111111
661
1000000
586
10001111111
574
10000111
547
10000000000
508
100000000111
445
100000001
397
10000000001111
392
100011111
387
10001111111111
382
10011111111111
347
100000111
323
100001111
282
1000000000000
280
10000111111111
253
100000011
242
10111111111111
212
1000111111
211
1000011111
206
1000011111111
166
1000001111
158
1000000001111
156
100011111111111
145
10000011111111
144
1000000111
138
100000111111111
127
10000111111
111
100000000001
108
100001111111
103
101111111111111
97
1000001111111
79
10000000011111
76
1000000000001
75
10000001111
72
100000111111
72
1000000011
70
10000000000001
68
1000001111111111
56
1000000001111111
55
10000011111
55
100000011111
50
100000000001111
49
100000000011111
41
10000000000011
40
100000000111111
40
10000000111
39
10000000000011111111
38
1000000000000001
37
1000000000011111
30
1000000111111
30
100001111111111
29
10000000000000000
28
1000000000011
25
1011111111111111
25
100000000001111111
22
100111111111111
22
10000000001111111
21
100000000000111
20
100000000000000
15
1000000011111
15
100000000000011
14
10000000000111111111
14
10000001111111
13
100000011111111
13
10000000000111
12
10000000000000001
11
100000000000001
11
1000000000000111
11
1000000000000000
9
100000000000000011
9
1000000000001111
9
100000001111
9
10000000111111
8
10000000000000
7
1000000000000000000000111
7
100000000000011111
7
1000000000000011
6
1000011111111111
6
10000000000011111
5
100000000011111111
5
100000001111111111
5
1001111111111111
5
10000000000000011
4
10000000000001111
4
1000000000000000000
3
10000000000000000000011
3
10000000000000000011
3
100000000000000001
3
1000000000000011111
3
1000000000001111111
3
1000000000111111
3
100000001111111
3
1000000111111111
3
10011111111111111
3
100000000000000000
2
100000000000000111
2
10000000000000111
2
100000000000001111
2
10000000000001111111
2
1000000000000111111111
2
100000000000111111111111
2
10000000000111111
2
100000000111111111
2
1000000011111111
2
100001111111111111
2
100000000000000000000000
One
10000000000000000000000000
One
10000000000000000000000000000000000000000000000000000000
One
10,000
One
10000000000000000000000001
One
10000000000000000000000000001
One
10000000000000000001
One
100000000000000000011
One
100000000000000001111
One
10000000000000000000111111111
One
1000000000000000111
One
10000000000000001111
One
100000000000111111111
One
1000000000011111111
One
1000000000111111111
One
1000000000111111111111111
One
10000000011111111
One
100000011111111111
One
10000011111111111
One
10000111111111111
One
1000111111111111
One
In this way, the transmission unit transmits the binary cluster types corresponding to the number of reference symbols and the number of reference symbols in succession, and transmits the full-scale compressed data. The compression symbols are transmitted in the order of the pre- Are sequentially transmitted as common code compression symbols in the form of binary clusters such as "10", "100", "101", "1000", "1001", "1011" do.
The generic code used in the present invention is described in detail in the present invention's prior art application No. 10-2014-0062515.
In general, an integer value is encoded by a method of encoding an arbitrary integer value
Generates a bitstream, decodes the bitstream generated in the opposite manner, and replaces the exponent value
want. The code thus encoded is called a universal code.
Each of the universal codes includes at least 0 or more "1" consecutive from the least significant bit of each universal code such as "10", "1011 (10/11)", "1000111 Quot ;, and at least zero or more consecutive "0" s disposed between the at least zero or more consecutive "1" A binary number having the smallest bit length among the universal codes satisfying these conditions is "10 ", and thereafter, the binary numbers of 100, 101, 1000, 1001, 1011, 10000, 10001, 10011, 10111, Can be listed.
As you can see here, the main cluster must have a "10"
, And then increase the number of bits to "1" from the least significant bit
"10" must remain on the upper bit side and "10" should be followed by "10"
When there is no phase "0", the number of bit digits is increased by "1" to "1000000"
do. These main clusters are sequentially arranged in order of decreasing bit length
The correspondence can be made as in the example of Table 3. After dividing the original data by binary clusters, each binary cluster is converted into a corresponding universal code according to the correspondence table shown in Table 3, and transmission is sequentially performed. That is, as shown in Table 3, in the original data stream, there are 45706 times in the case of binary cluster "1000 ", which is" 100 "when converted into a universal code devised in the present invention. And send it immediately. In this case, since the code is converted into a code reduced by one bit as compared with the original data and compressed and transmitted, a total of 45706 bits are saved and transmitted.
Binary cluster
Appearance frequency
Universal code
10
99972
10
1000
45706
100
101
27589
101
100
23918
1000
1011
12541
1001
1001
11778
1011
100000000000
9811
10000
10111
8747
10001
10001
7454
10011
10000
7082
10111
10011
5298
100000
100001
4309
100001
100111
3839
100011
101111
3755
100111
100011
3387
101111
1011111111
3387
1000000
100000000
2803
1000001
100000
2344
1000011
101111111111
2034
1000111
101111111
1945
1001111
10011111111
1897
1011111
100011111111
1859
10000000
10111111111
1853
10000001
1001111
1834
10000011
1000000001
1556
10000111
1000111
1488
10001111
10011111
1423
10011111
1000000000111
1305
10111111
1000011
1262
100000000
1000001
1239
100000001
1001111111
1177
100000011
1011111
1172
100000111
100111111111
1153
100001111
10001111
1081
100011111
10000000011
1010
100111111
10000000001
920
101111111
100000000011
890
1 billion
10000011
821
1000000001
1011111111111
802
1000000011
1 billion
795
1000000111
1001111111111
795
1000001111
100111111
794
1000011111
10000001
702
1000111111
1000111111111
694
1001111111
10000000
676
1011111111
10111111
661
10000000000
1000000
586
10000000001
10001111111
574
10000000011
10000111
547
10000000111
10000000000
508
10000001111
100000000111
445
10000011111
100000001
397
10000111111
10000000001111
392
10001111111
100011111
387
10011111111
10001111111111
382
10111111111
10011111111111
347
100000000000
100000111
323
100000000001
100001111
282
100000000011
1000000000000
280
100000000111
10000111111111
253
100000001111
100000011
242
100000011111
10111111111111
212
100000111111
1000111111
211
100001111111
1000011111
206
100011111111
1000011111111
166
100111111111
1000001111
158
101111111111
1000000001111
156
1000000000000
100011111111111
145
1000000000001
10000011111111
144
1000000000011
1000000111
138
1000000000111
100000111111111
127
1000000001111
10000111111
111
1000000011111
100000000001
108
1000000111111
100001111111
103
1000001111111
101111111111111
97
1000011111111
1000001111111
79
1000111111111
10000000011111
76
1001111111111
1000000000001
75
1011111111111
10000001111
72
10000000000000
100000111111
72
10000000000001
1000000011
70
10000000000011
10000000000001
68
10000000000111
1000001111111111
56
10000000001111
1000000001111111
55
10000000011111
10000011111
55
10000000111111
100000011111
50
10000001111111
100000000001111
49
10000011111111
100000000011111
41
10000111111111
10000000000011
40
10001111111111
100000000111111
40
10011111111111
10000000111
39
10111111111111
10000000000011111111
38
100000000000000
1000000000000001
37
100000000000001
1000000000011111
30
100000000000011
1000000111111
30
100000000000111
100001111111111
29
100000000001111
10000000000000000
28
100000000011111
1000000000011
25
100000000111111
1011111111111111
25
100000001111111
100000000001111111
22
100000011111111
100111111111111
22
100000111111111
10000000001111111
21
100001111111111
100000000000111
20
100011111111111
100000000000000
15
100111111111111
1000000011111
15
101111111111111
100000000000011
14
1000000000000000
10000000000111111111
14
1000000000000001
10000001111111
13
1000000000000011
100000011111111
13
1000000000000111
10000000000111
12
1000000000001111
10000000000000001
11
1000000000011111
100000000000001
11
1000000000111111
1000000000000111
11
1000000001111111
1000000000000000
9
1000000011111111
100000000000000011
9
1000000111111111
1000000000001111
9
1000001111111111
100000001111
9
1000011111111111
10000000111111
8
1000111111111111
10000000000000
7
1001111111111111
1000000000000000000000111
7
1011111111111111
100000000000011111
7
10000000000000000
1000000000000011
6
10000000000000001
1000011111111111
6
10000000000000011
10000000000011111
5
10000000000000111
100000000011111111
5
10000000000001111
100000001111111111
5
10000000000011111
1001111111111111
5
10000000000111111
10000000000000011
4
10000000001111111
10000000000001111
4
10000000011111111
1000000000000000000
3
10000000111111111
10000000000000000000011
3
10000001111111111
10000000000000000011
3
10000011111111111
100000000000000001
3
10000111111111111
1000000000000011111
3
10001111111111111
1000000000001111111
3
10011111111111111
1000000000111111
3
10111111111111111
100000001111111
3
100000000000000000
1000000111111111
3
100000000000000001
10011111111111111
3
100000000000000011
100000000000000000
2
100000000000000111
100000000000000111
2
100000000000001111
10000000000000111
2
100000000000011111
100000000000001111
2
100000000000111111
10000000000001111111
2
100000000001111111
1000000000000111111111
2
100000000011111111
100000000000111111111111
2
100000000111111111
10000000000111111
2
100000001111111111
100000000111111111
2
100000011111111111
1000000011111111
2
100000111111111111
100001111111111111
2
100001111111111111
100000000000000000000000
One
100011111111111111
10000000000000000000000000
One
100111111111111111
10000000000000000000000000000000000000000000000000000000
One
101111111111111111
10,000
One
1000000000000000000
10000000000000000000000001
One
1000000000000000001
10000000000000000000000000001
One
1000000000000000011
10000000000000000001
One
1000000000000000111
100000000000000000011
One
1000000000000001111
100000000000000001111
One
1000000000000011111
10000000000000000000111111111
One
1000000000000111111
1000000000000000111
One
1000000000001111111
10000000000000001111
One
1000000000011111111
100000000000111111111
One
1000000000111111111
1000000000011111111
One
1000000001111111111
1000000000111111111
One
1000000011111111111
1000000000111111111111111
One
1000000111111111111
10000000011111111
One
1000001111111111111
100000011111111111
One
1000011111111111111
10000011111111111
One
1000111111111111111
10000111111111111
One
1001111111111111111
1000111111111111
One
1011111111111111111
Table 4 below shows the data sequentially transmitted from the transmitter to the receiver using the mapping table of Table 3 in order of the original binary data. The binary cluster of the original data may be sequentially converted into the universal code and transmitted to the receiving unit. Here, the universal codes used in the present invention will be conceptually classified as compressed binary clusters in the present invention.
Binary cluster
The transmitted universal code (compressed binary cluster)
10
10
10111111111
10000001
101
101
10001111111111
10111111111
10000000000000000
100000000011111
100000
1000011
100
1000
10
10
100
1000
10001
10011
100
1000
100
1000
100
1000
10
10
10001
10011
10000000000000000
100000000011111
10000000
1011111111
10000000
1011111111
100000000
1000001
100
1000
101
101
1 billion
1000000111
100
1000
101
101
10000000000000000000111111111
1000000000000111111
101
101
101
101
1 billion
1000000111
100001
100001
1000000000000
100000000111
10
10
100000011
100000011111
10000011
1000000001
10000
10111
100
1000
10000011
1000000001
1000001
100000001
100000
1000011
10
10
100000
1000011
100
1000
10000
10111
10000000
1011111111
100
1000
10000
10111
101
101
10000
10111
101
101
10000
10111
10
10
1000001
100000001
1000000111
1000000000111
10001
10011
100
1000
1000
100
100000000111
10000011111
1000011
100000000
10000011
1000000001
100000111
100000000001
1000111
10001111
10000
10111
101
101
10000
10111
1011
1001
1000
100
100
1000
100001
100001
100
1000
100
1000
100
1000
10000
10111
10000000
1011111111
1001
1011
1000
100
100
1000
10
10
100
1000
10001
10011
100
1000
10000000
1011111111
10001
10011
100
1000
1000
100
1000
100
10
10
100000
1000011
101
101
10
10
10011
100000
100
1000
1001
1011
1000000
10000000001
10
10
100000
1000011
10
10
10
10
10001
10011
101
101
1000
100
10
10
101
101
100
1000
1000
100
1000
100
10001
10011
1001
1011
100
1000
100
1000
1000
100
100001
100001
100
1000
10001
10011
101
101
100011
101111
101
101
100111
100011
10
10
10
10
10000000
1011111111
10000000
1011111111
100000000
1000001
1001
1011
10001
10011
100000
1000011
10001
10011
100
1000
100
1000
101
101
10
10
1000
100
10
10
1001111
10000011
100
1000
100
1000
10
10
100011
101111
100
1000
10011111
10011111
10
10
100000000111
10000011111
101111111111
1000111
101
101
101
101
1 billion
1000000111
100001
100001
10000000
1011111111
10000
10111
101
101
10000
10111
101
101
10000
10111
101
101
10000111
10000000111
...
...
As a result of the total compression transmission, compression amount is calculated as shown in Table 5 below.
Binary cluster
Appearance frequency
Universal code
(Compressed binary cluster)
Amount of compression
Original data
Transmission data
10
99972
10
0
199944
199944
1000
45706
100
-45706
182824
137118
101
27589
101
0
82767
82767
100
23918
1000
23918
71754
95672
1011
12541
1001
0
50164
50164
1001
11778
1011
0
47112
47112
100000000000
9811
10000
-68677
117732
49055
10111
8747
10001
0
43735
43735
10001
7454
10011
0
37270
37270
10000
7082
10111
0
35410
35410
10011
5298
100000
5298
26490
31788
100001
4309
100001
0
25854
25854
100111
3839
100011
0
23034
23034
101111
3755
100111
0
22530
22530
100011
3387
101111
0
20322
20322
1011111111
3387
1000000
-10161
33870
23709
100000000
2803
1000001
-5606
25227
19621
100000
2344
1000011
2344
14064
16408
101111111111
2034
1000111
-10170
24408
14238
101111111
1945
1001111
-3890
17505
13615
10011111111
1897
1011111
-7588
20867
13279
100011111111
1859
10000000
-7436
22308
14872
10111111111
1853
10000001
-5559
20383
14824
1001111
1834
10000011
1834
12838
14672
1000000001
1556
10000111
-3112
15560
12448
1000111
1488
10001111
1488
10416
11904
10011111
1423
10011111
0
11384
11384
1000000000111
1305
10111111
-6525
16965
10440
1000011
1262
100000000
2524
8834
11358
1000001
1239
100000001
2478
8673
11151
1001111111
1177
100000011
-1177
11770
10593
1011111
1172
100000111
2344
8204
10548
100111111111
1153
100001111
-3459
13836
10377
10001111
1081
100011111
1081
8648
9729
10000000011
1010
100111111
-2020
11110
9090
10000000001
920
101111111
-1840
10120
8280
100000000011
890
1 billion
-1780
10680
8900
10000011
821
1000000001
1642
6568
8210
1011111111111
802
1000000011
-2406
10426
8020
1 billion
795
1000000111
0
7950
7950
1001111111111
795
1000001111
-2385
10335
7950
100111111
794
1000011111
794
7146
7940
10000001
702
1000111111
1404
5616
7020
1000111111111
694
1001111111
-2082
9022
6940
10000000
676
1011111111
1352
5408
6760
10111111
661
10000000000
1983
5288
7271
1000000
586
10000000001
2344
4102
6446
10001111111
574
10000000011
0
6314
6314
10000111
547
10000000111
1641
4376
6017
10000000000
508
10000001111
0
5588
5588
100000000111
445
10000011111
-445
5340
4895
100000001
397
10000111111
794
3573
4367
10000000001111
392
10001111111
-1176
5488
4312
100011111
387
10011111111
774
3483
4257
10001111111111
382
10111111111
-1146
5348
4202
10011111111111
347
100000000000
-694
4858
4164
100000111
323
100000000001
969
2907
3876
100001111
282
100000000011
846
2538
3384
1000000000000
280
100000000111
-280
3640
3360
10000111111111
253
100000001111
-506
3542
3036
100000011
242
100000011111
726
2178
2904
10111111111111
212
100000111111
-424
2968
2544
1000111111
211
100001111111
422
2110
2532
1000011111
206
100011111111
412
2060
2472
1000011111111
166
100111111111
-166
2158
1992
1000001111
158
101111111111
316
1580
1896
1000000001111
156
1000000000000
0
2028
2028
100011111111111
145
1000000000001
-290
2175
1885
10000011111111
144
1000000000011
-144
2016
1872
1000000111
138
1000000000111
414
1380
1794
100000111111111
127
1000000001111
-254
1905
1651
10000111111
111
1000000011111
222
1221
1443
100000000001
108
1000000111111
108
1296
1404
100001111111
103
1000001111111
103
1236
1339
101111111111111
97
1000011111111
-194
1455
1261
1000001111111
79
1000111111111
0
1027
1027
10000000011111
76
1001111111111
-76
1064
988
1000000000001
75
1011111111111
0
975
975
10000001111
72
10000000000000
216
792
1008
100000111111
72
10000000000001
144
864
1008
1000000011
70
10000000000011
280
700
980
10000000000001
68
10000000000111
0
952
952
1000001111111111
56
10000000001111
-112
896
784
1000000001111111
55
10000000011111
-110
880
770
10000011111
55
10000000111111
165
605
770
100000011111
50
10000001111111
100
600
700
100000000001111
49
10000011111111
-49
735
686
100000000011111
41
10000111111111
-41
615
574
10000000000011
40
10001111111111
0
560
560
100000000111111
40
10011111111111
-40
600
560
10000000111
39
10111111111111
117
429
546
10000000000011111111
38
100000000000000
-190
760
570
1000000000000001
37
100000000000001
-37
592
555
1000000000011111
30
100000000000011
-30
480
450
1000000111111
30
100000000000111
60
390
450
100001111111111
29
100000000001111
0
435
435
10000000000000000
28
100000000011111
-56
476
420
1000000000011
25
100000000111111
50
325
375
1011111111111111
25
100000001111111
-25
400
375
100000000001111111
22
100000011111111
-66
396
330
100111111111111
22
100000111111111
0
330
330
10000000001111111
21
100001111111111
-42
357
315
100000000000111
20
100011111111111
0
300
300
100000000000000
15
100111111111111
0
225
225
1000000011111
15
101111111111111
30
195
225
100000000000011
14
1000000000000000
14
210
224
10000000000111111111
14
1000000000000001
-56
280
224
10000001111111
13
1000000000000011
26
182
208
100000011111111
13
1000000000000111
13
195
208
10000000000111
12
1000000000001111
24
168
192
10000000000000001
11
1000000000011111
-11
187
176
100000000000001
11
1000000000111111
11
165
176
1000000000000111
11
1000000001111111
0
176
176
1000000000000000
9
1000000011111111
0
144
144
100000000000000011
9
1000000111111111
-18
162
144
1000000000001111
9
1000001111111111
0
144
144
100000001111
9
1000011111111111
36
108
144
10000000111111
8
1000111111111111
16
112
128
10000000000000
7
1001111111111111
14
98
112
1000000000000000000000111
7
1011111111111111
-63
175
112
100000000000011111
7
10000000000000000
-7
126
119
1000000000000011
6
10000000000000001
6
96
102
1000011111111111
6
10000000000000011
6
96
102
10000000000011111
5
10000000000000111
0
85
85
100000000011111111
5
10000000000001111
-5
90
85
100000001111111111
5
10000000000011111
-5
90
85
1001111111111111
5
10000000000111111
5
80
85
10000000000000011
4
10000000001111111
0
68
68
10000000000001111
4
10000000011111111
0
68
68
1000000000000000000
3
10000000111111111
-6
57
51
10000000000000000000011
3
10000001111111111
-18
69
51
10000000000000000011
3
10000011111111111
-9
60
51
100000000000000001
3
10000111111111111
-3
54
51
1000000000000011111
3
10001111111111111
-6
57
51
1000000000001111111
3
10011111111111111
-6
57
51
1000000000111111
3
10111111111111111
3
48
51
100000001111111
3
100000000000000000
9
45
54
1000000111111111
3
100000000000000001
6
48
54
10011111111111111
3
100000000000000011
3
51
54
100000000000000000
2
100000000000000111
0
36
36
100000000000000111
2
100000000000001111
0
36
36
10000000000000111
2
100000000000011111
2
34
36
100000000000001111
2
100000000000111111
0
36
36
10000000000001111111
2
100000000001111111
-4
40
36
1000000000000111111111
2
100000000011111111
-8
44
36
100000000000111111111111
2
100000000111111111
-12
48
36
10000000000111111
2
100000001111111111
2
34
36
100000000111111111
2
100000011111111111
0
36
36
1000000011111111
2
100000111111111111
4
32
36
100001111111111111
2
100001111111111111
0
36
36
100000000000000000000000
One
100011111111111111
-6
24
18
10000000000000000000000000
One
100111111111111111
-8
26
18
10000000000000000000000000000000000000000000000000000000
One
101111111111111111
-38
56
18
10,000
One
1000000000000000000
-53
72
19
10000000000000000000000001
One
1000000000000000001
-11
30
19
10000000000000000000000000001
One
1000000000000000011
-10
29
19
10000000000000000001
One
1000000000000000111
-One
20
19
100000000000000000011
One
1000000000000001111
-2
21
19
100000000000000001111
One
1000000000000011111
-4
23
19
10000000000000000000111111111
One
1000000000000111111
-8
27
19
1000000000000000111
One
1000000000001111111
0
19
19
10000000000000001111
One
1000000000011111111
-One
20
19
100000000000111111111
One
1000000000111111111
-2
21
19
1000000000011111111
One
1000000001111111111
0
19
19
1000000000111111111
One
1000000011111111111
0
19
19
1000000000111111111111111
One
1000000111111111111
-6
25
19
10000000011111111
One
1000001111111111111
2
17
19
100000011111111111
One
1000011111111111111
One
18
19
10000011111111111
One
1000111111111111111
2
17
19
10000111111111111
One
1001111111111111111
2
17
19
1000111111111111
One
1011111111111111111
3
16
19
Sum
-136599
1503709
1367110
As shown in Table 5, in the case of the example data, it can be seen that the JPG file of 1503709 bits is compressed and transmitted to 1377110 bits.
According to the present invention, data can be compressed and transmitted to a target device very quickly and efficiently without passing through entropy encoding such as Huffman coding through a simple operation.
On the other hand, we will explain how to decompress in real time in the receiver. First, the number of reference symbols received at the beginning of reception First, 171 is received first in this embodiment, and then 171 kinds of binary clusters in receiver are for decompression table configuration. Therefore, 171 kinds of arriving binary clusters are divided in the order of received, and a decompression table as shown in Table 6 is created.
Binary cluster
10
1000
101
100
1011
1001
100000000000
10111
10001
10000
10011
100001
100111
101111
100011
1011111111
100000000
100000
101111111111
101111111
10011111111
100011111111
10111111111
1001111
1000000001
1000111
10011111
1000000000111
1000011
1000001
1001111111
1011111
100111111111
10001111
10000000011
10000000001
100000000011
10000011
1011111111111
1 billion
1001111111111
100111111
10000001
1000111111111
10000000
10111111
1000000
10001111111
10000111
10000000000
100000000111
100000001
10000000001111
100011111
10001111111111
10011111111111
100000111
100001111
1000000000000
10000111111111
100000011
10111111111111
1000111111
1000011111
1000011111111
1000001111
1000000001111
100011111111111
10000011111111
1000000111
100000111111111
10000111111
100000000001
100001111111
101111111111111
1000001111111
10000000011111
1000000000001
10000001111
100000111111
1000000011
10000000000001
1000001111111111
1000000001111111
10000011111
100000011111
100000000001111
100000000011111
10000000000011
100000000111111
10000000111
10000000000011111111
1000000000000001
1000000000011111
1000000111111
100001111111111
10000000000000000
1000000000011
1011111111111111
100000000001111111
100111111111111
10000000001111111
100000000000111
100000000000000
1000000011111
100000000000011
10000000000111111111
10000001111111
100000011111111
10000000000111
10000000000000001
100000000000001
1000000000000111
1000000000000000
100000000000000011
1000000000001111
100000001111
10000000111111
10000000000000
1000000000000000000000111
100000000000011111
1000000000000011
1000011111111111
10000000000011111
100000000011111111
100000001111111111
1001111111111111
10000000000000011
10000000000001111
1000000000000000000
10000000000000000000011
10000000000000000011
100000000000000001
1000000000000011111
1000000000001111111
1000000000111111
100000001111111
1000000111111111
10011111111111111
100000000000000000
100000000000000111
10000000000000111
100000000000001111
10000000000001111111
1000000000000111111111
100000000000111111111111
10000000000111111
100000000111111111
1000000011111111
100001111111111111
100000000000000000000000
10000000000000000000000000
10000000000000000000000000000000000000000000000000000000
10,000
10000000000000000000000001
10000000000000000000000000001
10000000000000000001
100000000000000000011
100000000000000001111
10000000000000000000111111111
1000000000000000111
10000000000000001111
100000000000111111111
1000000000011111111
1000000000111111111
1000000000111111111111111
10000000011111111
100000011111111111
10000011111111111
10000111111111111
1000111111111111
Now, in the receiver, the universal codes for the compression clusters corresponding to 171 kinds can be automatically generated as shown in Table 7 below.
Universal code
10
100
101
1000
1001
1011
10000
10001
10011
10111
100000
100001
100011
100111
101111
1000000
1000001
1000011
1000111
1001111
1011111
10000000
10000001
10000011
10000111
10001111
10011111
10111111
100000000
100000001
100000011
100000111
100001111
100011111
100111111
101111111
1 billion
1000000001
1000000011
1000000111
1000001111
1000011111
1000111111
1001111111
1011111111
10000000000
10000000001
10000000011
10000000111
10000001111
10000011111
10000111111
10001111111
10011111111
10111111111
100000000000
100000000001
100000000011
100000000111
100000001111
100000011111
100000111111
100001111111
100011111111
100111111111
101111111111
1000000000000
1000000000001
1000000000011
1000000000111
1000000001111
1000000011111
1000000111111
1000001111111
1000011111111
1000111111111
1001111111111
1011111111111
10000000000000
10000000000001
10000000000011
10000000000111
10000000001111
10000000011111
10000000111111
10000001111111
10000011111111
10000111111111
10001111111111
10011111111111
10111111111111
100000000000000
100000000000001
100000000000011
100000000000111
100000000001111
100000000011111
100000000111111
100000001111111
100000011111111
100000111111111
100001111111111
100011111111111
100111111111111
101111111111111
1000000000000000
1000000000000001
1000000000000011
1000000000000111
1000000000001111
1000000000011111
1000000000111111
1000000001111111
1000000011111111
1000000111111111
1000001111111111
1000011111111111
1000111111111111
1001111111111111
1011111111111111
10000000000000000
10000000000000001
10000000000000011
10000000000000111
10000000000001111
10000000000011111
10000000000111111
10000000001111111
10000000011111111
10000000111111111
10000001111111111
10000011111111111
10000111111111111
10001111111111111
10011111111111111
10111111111111111
100000000000000000
100000000000000001
100000000000000011
100000000000000111
100000000000001111
100000000000011111
100000000000111111
100000000001111111
100000000011111111
100000000111111111
100000001111111111
100000011111111111
100000111111111111
100001111111111111
100011111111111111
100111111111111111
101111111111111111
1000000000000000000
1000000000000000001
1000000000000000011
1000000000000000111
1000000000000001111
1000000000000011111
1000000000000111111
1000000000001111111
1000000000011111111
1000000000111111111
1000000001111111111
1000000011111111111
1000000111111111111
1000001111111111111
1000011111111111111
1000111111111111111
1001111111111111111
1011111111111111111
The final decompression table in which the binary clusters for the decompression tables and the universal codes in the order of 1: 1 are listed in Table 6 and Table 7 can be generated in the receiver as shown in Table 8. [
Binary cluster
Universal code (compressed binary cluster)
10
10
1000
100
101
101
100
1000
1011
1001
1001
1011
100000000000
10000
10111
10001
10001
10011
10000
10111
10011
100000
100001
100001
100111
100011
101111
100111
100011
101111
1011111111
1000000
100000000
1000001
100000
1000011
101111111111
1000111
101111111
1001111
10011111111
1011111
100011111111
10000000
10111111111
10000001
1001111
10000011
1000000001
10000111
1000111
10001111
10011111
10011111
1000000000111
10111111
1000011
100000000
1000001
100000001
1001111111
100000011
1011111
100000111
100111111111
100001111
10001111
100011111
10000000011
100111111
10000000001
101111111
100000000011
1 billion
10000011
1000000001
1011111111111
1000000011
1 billion
1000000111
1001111111111
1000001111
100111111
1000011111
10000001
1000111111
1000111111111
1001111111
10000000
1011111111
10111111
10000000000
1000000
10000000001
10001111111
10000000011
10000111
10000000111
10000000000
10000001111
100000000111
10000011111
100000001
10000111111
10000000001111
10001111111
100011111
10011111111
10001111111111
10111111111
10011111111111
100000000000
100000111
100000000001
100001111
100000000011
1000000000000
100000000111
10000111111111
100000001111
100000011
100000011111
10111111111111
100000111111
1000111111
100001111111
1000011111
100011111111
1000011111111
100111111111
1000001111
101111111111
1000000001111
1000000000000
100011111111111
1000000000001
10000011111111
1000000000011
1000000111
1000000000111
100000111111111
1000000001111
10000111111
1000000011111
100000000001
1000000111111
100001111111
1000001111111
101111111111111
1000011111111
1000001111111
1000111111111
10000000011111
1001111111111
1000000000001
1011111111111
10000001111
10000000000000
100000111111
10000000000001
1000000011
10000000000011
10000000000001
10000000000111
1000001111111111
10000000001111
1000000001111111
10000000011111
10000011111
10000000111111
100000011111
10000001111111
100000000001111
10000011111111
100000000011111
10000111111111
10000000000011
10001111111111
100000000111111
10011111111111
10000000111
10111111111111
10000000000011111111
100000000000000
1000000000000001
100000000000001
1000000000011111
100000000000011
1000000111111
100000000000111
100001111111111
100000000001111
10000000000000000
100000000011111
1000000000011
100000000111111
1011111111111111
100000001111111
100000000001111111
100000011111111
100111111111111
100000111111111
10000000001111111
100001111111111
100000000000111
100011111111111
100000000000000
100111111111111
1000000011111
101111111111111
100000000000011
1000000000000000
10000000000111111111
1000000000000001
10000001111111
1000000000000011
100000011111111
1000000000000111
10000000000111
1000000000001111
10000000000000001
1000000000011111
100000000000001
1000000000111111
1000000000000111
1000000001111111
1000000000000000
1000000011111111
100000000000000011
1000000111111111
1000000000001111
1000001111111111
100000001111
1000011111111111
10000000111111
1000111111111111
10000000000000
1001111111111111
1000000000000000000000111
1011111111111111
100000000000011111
10000000000000000
1000000000000011
10000000000000001
1000011111111111
10000000000000011
10000000000011111
10000000000000111
100000000011111111
10000000000001111
100000001111111111
10000000000011111
1001111111111111
10000000000111111
10000000000000011
10000000001111111
10000000000001111
10000000011111111
1000000000000000000
10000000111111111
10000000000000000000011
10000001111111111
10000000000000000011
10000011111111111
100000000000000001
10000111111111111
1000000000000011111
10001111111111111
1000000000001111111
10011111111111111
1000000000111111
10111111111111111
100000001111111
100000000000000000
1000000111111111
100000000000000001
10011111111111111
100000000000000011
100000000000000000
100000000000000111
100000000000000111
100000000000001111
10000000000000111
100000000000011111
100000000000001111
100000000000111111
10000000000001111111
100000000001111111
1000000000000111111111
100000000011111111
100000000000111111111111
100000000111111111
10000000000111111
100000001111111111
100000000111111111
100000011111111111
1000000011111111
100000111111111111
100001111111111111
100001111111111111
100000000000000000000000
100011111111111111
10000000000000000000000000
100111111111111111
10000000000000000000000000000000000000000000000000000000
101111111111111111
10,000
1000000000000000000
10000000000000000000000001
1000000000000000001
10000000000000000000000000001
1000000000000000011
10000000000000000001
1000000000000000111
100000000000000000011
1000000000000001111
100000000000000001111
1000000000000011111
10000000000000000000111111111
1000000000000111111
1000000000000000111
1000000000001111111
10000000000000001111
1000000000011111111
100000000000111111111
1000000000111111111
1000000000011111111
1000000001111111111
1000000000111111111
1000000011111111111
1000000000111111111111111
1000000111111111111
10000000011111111
1000001111111111111
100000011111111111
1000011111111111111
10000011111111111
1000111111111111111
10000111111111111
1001111111111111111
1000111111111111
1011111111111111111
As shown in Table 8, all the binary clusters (the compressed binary clusters in the form of universal codes) that are received afterwards using the decompression table generated using the symbol binary clusters of the number of the reference symbols and the number of consecutive symbols, ) Is reduced to binary clusters and decompressed to 1: 1 in real time, and the original data is recovered. Finally, if the topmost compulsory header is removed from the recovered original data, it is correctly restored to the original original data.
Since it is possible to quickly perform a collation operation in a memory without requiring a separate tree or a complex dictionary search process for real-time compression and decompression of the present invention, it can be an invention suitable for real-time transmission,
In particular, if a minimum amount of information is transmitted and received without generating and transmitting a decompression dictionary separately on the transmitting side and the receiving side, the receiving side can automatically complete the dictionary and perform decompression, which is very economical.