stringtranslate.com

Código de coma

Un código de coma es un tipo de código sin prefijo en el que una coma , un símbolo particular o una secuencia de símbolos, aparece al final de una palabra de código y nunca aparece en otro lugar. [1] Esta es una forma intuitiva de expresar matrices.

Por ejemplo, la codificación de Fibonacci es un código de coma en el que la coma es 11. 11y 1011son palabras de código de Fibonacci válidas, pero 101, 0111, y 11011no lo son.

Ejemplos

La definición de palabra es un conjunto de símbolos que terminan en coma, el equivalente a un carácter de espacio .

Todos los datos codificados o datos de la misma longitud adecuadamente seleccionados exhiben la llamada probabilidad implícita.

Estos datos, que pueden denominarse "datos genéricos", pueden analizarse utilizando cualquier código unario entrelazado como encabezados donde los bits biyectivos adicionales (iguales a la longitud del código unario recién leído) se leen como datos mientras que el código unario sirve como introducción o encabezado para los datos. Este encabezado sirve como una coma. Los datos pueden leerse de manera entrelazada entre cada bit del encabezado o de manera posterior a la lectura cuando los datos solo se leen después de que se lea todo el código de encabezado unario, como la codificación Chen-Ho .

Se puede ver mediante técnicas de recorrido aleatorio y suma estadística que todos los datos genéricos tienen un encabezado o coma de un promedio de 2 bits y datos de 2 bits adicionales (mínimo 1).

Esto también permite un algoritmo económico de aumento de base antes de la transmisión en canales de comunicación no binarios, como los canales de comunicación base 3 o base 5.

Donde '?' es '1' o '2' para el valor del dígito biyectivo que no requiere procesamiento adicional.

Por supuesto, utilizamos una sola coma para separar cada campo de datos, lo que demuestra que todos los datos constan de un 50% de comas. Esto es bastante visible a partir de una probabilidad implícita del 50% para el 0código en códigos de base 3 de Huffman: 0, 10, 11(2/3 netos o 66,66% de comas) o el código de coma de base 5 que se muestra arriba. El cociente de costo por carácter de la comunicación de base superior tiene que mantener valores casi logarítmicos para los datos y menos de 2 bits para el carácter de coma para mantener la rentabilidad.

Este método tiene una garantía de un '1' o '2' después de cada '0' (coma) y esta propiedad puede ser útil al diseñar en torno a preocupaciones de tiempo en la transmisión. Puede ser algo costoso convertir un valor binario conocido a ternario a menos que los costos de bits ternarios se reduzcan a similares a los costos de bits binarios, por lo que este bit se puede multiplexar en un canal binario separado si los costos coinciden (esto puede requerir una lectura de una porción 'de cola'/final adicional de datos puros de 2 bits para el canal binario (desde después del primer bit del primer cambio ya que este no es un código decodificable instantáneamente, simplemente lea si se usa un código unario decodificable instantáneamente) para que sea similar a los 2 bits ternarios promedio restantes en el canal primario equivalentes a bits antes de que se tengan en cuenta las comparaciones de costos).

Sin tener en cuenta la multiplexación, este método tiene una eficiencia de lectura de 3 dígitos ternarios para una lectura de 4 bits binarios o 1,33 bits.

Donde '?' es '1' o '2' para el valor del dígito biyectivo que no requiere procesamiento adicional. Este método da como resultado una similitud estadística con una simple 'lectura implícita' de códigos de Huffman base 3: 0, 10, 11(2/3 netos o 66,66 % comas).

Se puede ver mediante técnicas de recorrido aleatorio y suma estadística que todos los datos genéricos tienen un encabezado o coma de un promedio de 2 bits y datos de 1 bit adicional (mínimo 0).

Esto no garantiza que haya un '1' o '2' después de cada '0' (coma), una propiedad que puede ser útil al diseñar teniendo en cuenta las preocupaciones de tiempo en la transmisión.

Este método tiene una eficiencia de lectura de 2 dígitos ternarios para una lectura de 3 bits binarios o 1,5 bits binarios/dígito ternario.

La principal ventaja de esta técnica, aparte de una mayor eficiencia, es que no se requiere una conversión de base, lo que requeriría que primero se lea todo el flujo y luego se convierta. La desventaja es que la longitud promedio del número se vuelve más alta y, de manera similar a la generación de números aleatorios, las preocupaciones de tiempo que rigen la transmisión ternaria pasan a primer plano. Con m=2 y n=2, obtenemos, sin olvidar que un valor de '(2)' es esencialmente 0 bits:

Por lo tanto, este método tiene una eficiencia de lectura de 2 dígitos ternarios para una lectura de bits binarios o 1,5625 bits binarios/dígito ternario. O .

Una eficiencia de escritura de 2 dígitos ternarios para una escritura de bits o 1,61 bits binarios/dígito ternario, o

Véase también

Referencias

  1. ^ Wade, Graham (8 de septiembre de 1994). Codificación y procesamiento de señales. Cambridge University Press. pág. 56. ISBN 978-0-521-42336-6.