当前位置: 首页 > 工具软件 > codewords > 使用案例 >

Unary Code

宋涵衍
2023-12-01
  • Unary coding, sometimes called thermometer code, is an entropy encoding that represents a natural number n, with n ones followed by a zero (if natural number is understood as non-negative integer) or with n − 1 ones followed by a zero (if natural number is understood as strictly positive integer).
  • For example 5 is represented as 111110 or 11110. Some representations use n or n − 1 zeros followed by a one. The ones and zeros are interchangeable without loss of generality.
  • Unary coding is both a prefix-free code and a self-synchronizing code.
n (non-negative)n (strictly positive)Unary codeAlternative
0101
121001
23110001
3411100001
451111000001
56111110000001
6711111100000001
781111111000000001
89111111110000000001
91011111111100000000001
  • A generalized version of unary coding is able to represent numbers much more efficiently than standard unary coding.
  • Here’s an example of generalized unary coding for integers from 1 through 15 that requires only 7 bits (where three bits are arbitrarily chosen in place of a single one in standard unary to show the number). Note that the representation is cyclic where one uses markers to represent higher integers in higher cycles.
nUnary codeGeneralized unary
000000000
1100000111
21100001110
311100011100
4111100111000
51111101110000
611111100010111
7111111100101110
81111111101011100
911111111100111001
10111111111101110010
111111111111100100111
1211111111111101001110
13111111111111100011101
141111111111111100111010
1511111111111111101110100
 类似资料:

相关阅读

相关文章

相关问答