Shannon coding

This online calculator generates Shannon coding based on a set of symbols and their probabilities

This online calculator produces Shannon coding for set of symbols given their probabilities. A bit of theory can be found below the calculator.

PLANETCALC, Shannon coding

Shannon coding

Symbols probability table

Items per page:

Digits after the decimal point: 2
Weighted path length
Shannon entropy

Shannon coding

In the field of data compression, Shannon coding, named after its creator, Claude Shannon, is a lossless data compression technique for constructing a prefix code based on a set of symbols and their probabilities (estimated or measured). It is suboptimal in the sense that it does not achieve the lowest possible expected code word length like Huffman coding does, and never better but sometimes equal to the Shannon-Fano coding.

In Shannon coding, the symbols are arranged in order from most probable to least probable, and assigned codewords by taking the first l_{i}=\left\lceil -\log _{2}p_{i}\right\rceil bits from the binary expansions of the cumulative probabilities \sum \limits _{k=1}^{i-1}p_{k}. Here \lceil x\rceil denotes the ceiling function (which rounds x up to the next integer value).1