¿El código Morse es binario, ternario o quinario?


27

Estoy leyendo el libro: " Código: el lenguaje oculto del hardware y software de la computadora " y en el Capítulo 2 el autor dice:

Se dice que el código Morse es un código binario (que significa literalmente dos por dos) porque los componentes del código consisten en solo dos cosas: un punto y un guión.

Wikipedia por otro lado dice:

Estrictamente hablando, no es binario, ya que hay cinco elementos fundamentales (ver quinario). Sin embargo, esto no significa que el código Morse no se pueda representar como un código binario. En un sentido abstracto, esta es la función que realizan los operadores de telégrafos cuando transmiten mensajes (ver quinario).

Pero, de nuevo, otra página de Wikipedia incluye el Código Morse en 'Lista de códigos binarios'.

Estoy muy confundido porque creo que el Código Morse en realidad es ternario . Tiene 3 tipos diferentes de 'posibilidades': un silencio, un pitido corto o un pitido largo.

Es imposible representar el Código Morse en 'mover binario' ¿no?

Por "binario estricto" quiero decir, piense en la secuencia de binario: 1010111101010 .. ¿Cómo se supone que represente un silencio, un pitido corto y / o un pitido largo?

La única forma en que puedo pensar es en el 'tamaño de palabra' que implementa una computadora. Si yo (y la CPU / el intérprete del código) sé que leerá 8 bits cada vez, entonces puedo representar el Código Morse. Simplemente puedo representar un pitido corto con un 1 o un pitido largo con un 0 y los silencios estarán implícitamente representados por la longitud de la palabra. (Digamos 8 bits ...) Entonces, nuevamente, tengo esta tercera variable / el tercer activo en mi mano: el tamaño de la palabra.

Mi pensamiento es así: puedo reservar los primeros 3 bits para cuántos bits se leerán, y los últimos 5 bits para el código Morse en una palabra de 8 bits. Como 00110000 significará 'A'. Y todavía estoy en 'binario' PERO necesito el tamaño de la palabra que lo hace ternario, ¿no? Los primeros 3 bits dicen: Lea solo 1 bit de los siguientes 5 bits.

En lugar de binario, si usamos trinario, podemos mostrar código morse como: 101021110102110222 etc. donde 1 es: dit 0 es: dah y 2 es silencio. Al usar 222 podemos codificar el silencio largo, por lo que si tiene una señal como * - * --- * - puede mostrarlo como: 102100022210, pero no es directamente posible usando solo con 1 y 0 A MENOS que aparezca algo como un tamaño de palabra 'fijo' como mencioné, pero bueno, esto es interpretar, no guardar el Código Morse como está en binario. Imagina algo como un piano, solo tienes los botones del piano. Desea dejar un mensaje en Código Morse para alguien y puede pintar los botones en negro. No hay forma de dejar un mensaje claro, ¿no? Necesita al menos un color más para poder poner los silencios (los que están entre caracteres y palabras. Esto es lo que quiero decir con trenary.

No estoy preguntando si puedes representar el Código Morse en 57-ary o cualquier otra cosa.

He enviado un correo electrónico al autor (Charles Petzold) sobre esto; él dice que demuestra en el Capítulo 9 del "Código" que el Código Morse puede interpretarse como un código binario.

¿Dónde me equivoco con mi pensamiento? ¿Lo que estoy leyendo en el libro es que el Código Morse es un hecho binario o no? ¿Es de alguna manera discutible? ¿Por qué se dice que el Código Morse es quinario en una página de Wikipedia, y también aparece en la página Lista de códigos binarios ?

Editar: He enviado un correo electrónico al autor y obtuve una respuesta:

-----Mensaje original-----

De: Koray Tugay [mailto: koray@tugay.biz]

Enviado: martes 3 de marzo de 2015 3:16 PM

Para: cp@charlespetzold.com

Asunto: ¿El código Morse es realmente binario?

Señor, ¿podría echar un vistazo a mi pregunta aquí: el Código Morse es binario, ternario o quinario? quinario?

Saludos, Koray Tugay

De: "Charles Petzold"

Para: "'Koray Tugay'"

Asunto: RE: ¿El código Morse es realmente binario? Fecha: 3

Mar 2015 23:04:35 EET

Hacia el final del Capítulo 9 en "Código" demuestro que el Código Morse puede interpretarse como un código binario.

-----Mensaje original-----

De: Koray Tugay [mailto: koray@tugay.biz]

Enviado: martes 3 de marzo de 2015 3:16 PM

Para: cp@charlespetzold.com

Asunto: ¿El código Morse es realmente binario?

Señor, ¿podría echar un vistazo a mi pregunta aquí: el Código Morse es binario, ternario o quinario? quinario?

Saludos, Koray Tugay

No estoy ocultando su correo electrónico, ya que es muy fácil de encontrar en la web de todos modos.


Mueva cualquier conversación a chat.stackexchange.com/rooms/21638/…
Wandering Logic

Los comentarios no son para discusión extendida; Esta conversación se ha movido al chat .
Raphael

Arreglé los enlaces que borré accidentalmente (whoops); absténgase de retroceder más a las peores revisiones.
Raphael

1
@WanderingLogic El enfoque correcto, más efectivo y sin ruido es marcar en silencio la pregunta para la limpieza de comentarios y sugerir que los comentarios se muevan para chatear en la bandera, no para jugar públicamente la policía de comentarios e intentar crear una sala de chat para combinar todos los comentarios en Todas las respuestas sin contexto. Sus enlaces ahora también confunden el asunto ya que Raphael ha publicado enlaces correctos.
Jason C

1
@ J.-E.Pin Bueno, no di una definición formal porque daba por sentado que las personas que respondieran la pregunta lo sabrían, y tenía una o dos referencias a wikipedia para establecer el contexto. Incluso si wikipedia puede estar lejos de ser perfecta, esto debería ser capaz de asumir el papel de definiciones, como se hace a menudo aquí. Me tomó un tiempo darme cuenta de que era el problema, en realidad aparentemente generalizado. Yo mismo estaba en el proceso de reescribirlo todo en detalle, con definiciones explícitas, citas, referencias y explicaciones formales con homomorfismos inyectivos. ¿Debo terminar?
babou

Respuestas:


19

El código Morse es un código ternario de prefijo (para codificar 58 caracteres) encima de un código binario de prefijo que codifica los tres símbolos.

Esta fue una respuesta mucho más corta cuando fue aceptada. Sin embargo, considerando los considerables malentendidos entre los usuarios y siguiendo una solicitud del OP, escribí esta respuesta mucho más larga. La primera sección de "cáscara de nuez" le da la esencia.

Contenido

En una cáscara de nuez (grande)

Al preguntar "¿El código Morse es binario, ternario o quinario?" no hay comparación de posibles respuestas a menos que uno arregle algunos criterios para una respuesta aceptable. De hecho, sin los criterios adecuados, uno puede idear explicaciones para casi cualquier tipo de estructura. Los criterios que he elegido son los siguientes:

  • debe reflejar la descripción de tres niveles del código Morse con la representación de punto / guión en el segundo nivel;

  • debe ajustarse a la presentación y las herramientas matemáticas desarrolladas para el análisis teórico de códigos, tanto como sea posible;

  • debería ser lo más simple posible;

  • Debería hacer evidentes las propiedades del código Morse

Esto tiene la intención de impedir la piratería arbitraria, que ignora los conceptos básicos de la teoría del código tal como se estudió científicamente, y que puede tener cierto atractivo al dar una ilusión de análisis sistemático, aunque se aborda de manera demasiado informal para ser concluyente. Se supone que este sitio trata sobre informática , no sobre programación. Deberíamos usar un mínimo de ciencia establecida y conceptos aceptados para responder una pregunta técnica.

Un análisis rápido del estándar muestra que todos los símbolos utilizados en el código Morse se codifican en última instancia en binario , ya que se transmite como una cadena de unidades de igual longitud, con una señal que puede activarse o desactivarse para cada unidad. Esto indica que los mensajes Morse finalmente están codificados en un alfabeto lógico .Σ1={0,1}

Pero eso no dice nada de la estructura interna del código. La información a codificar es una cadena en un alfabeto de 58 símbolos (según el estándar) que incluye 57 caracteres y un espacio. Esto corresponde a un alfabeto Σ3={A,B,,Z,0,1,,9,?,=,,×,@,[]}, el último símbolo es el espacio.

Sin embargo, los previsto por la norma de que hay un alfabeto intermedio , sobre la base de y y posiblemente otros símbolos. Es bastante claroΣ2dotdash

  • que las cadenas en deben codificarse como cadenas en Σ 2 , yΣ3Σ2

  • que las cadenas en deben codificarse como cadenas en Σ 1Σ2Σ1

Entonces, dado que no hay opción para y Σ 3 , la pregunta debe entenderse como: " ¿Qué número de símbolos deberíamos considerar en el alfabeto intermedio Σ 2 para explicar mejor la estructura y las propiedades de todo el Morse? código " , que también implica especificar las dos codificaciones entre los tres niveles.Σ1Σ3Σ2

Dado el hecho de que el código Morse es un prefijo de código homomorphic (longitud variable) que se opone a cualquier ambigüedad cuando se decodifica una señal, que pueden explicar simplemente esta propiedad esencial con un ternario alfabeto { , , }, y dos esquema de codificación C 3 2 de Σ 3 a Σ 2 , y C 2 1 de Σ 2 a Σ 1Σ2=dotdashsepC32Σ3Σ2C21Σ2Σ1, que son a la vez homomórficos y prefijos, por lo tanto, ambos códigos no ambiguos y, por lo tanto, pueden componerse para proporcionar una codificación de prefijo inequívoco de los 58 símbolos en binario.

Por lo tanto el código Morse se compone de un código de prefijo ternario expresado en el alfabeto , , } , con estos tres símbolos mismos codificado en binario con las siguientes palabras de código:{ dotdashsep }

dot ,1110 y0010dash 1110sep 00

Tenga en cuenta que lo que se conoce como el espacio entre consecutivos doto dashrealmente se incluye en la representación de doty dash, como esta es la representación matemática habitual para tales tipos de códigos, que generalmente se definen como homomorfismos de cadena de símbolos de origen a palabras de código expresadas con símbolos de destino, como acabo de hacer.

Esto se aleja un poco de parte de la presentación dada en el estándar, que apunta más a especificar intuitivamente el código para los usuarios, en lugar de analizarlo por sus propiedades estructurales. Pero la codificación es la misma en ambos casos.

Incluso sin los tiempos precisos del estándar, un decodificador de la señal analógica podría traducirlo al alfabeto ternario que sugerimos, de modo que la comprensión anterior del código ternario aún sería válida.

Códigos: puntos básicos

Esta respuesta se basa en la Norma UIT-R M.1677-1 , fechada en octubre de 2009 (gracias a Jason C por la referencia). Usaré la terminología doty dash, en lugar de dity dah, ya que es la terminología utilizada por esta norma.

Antes de comenzar a discutir el código Morse, debemos acordar qué es un código. Las difíciles discusiones sobre esta cuestión obviamente lo requieren.

Fundamentalmente, la información necesita ser representada para ser transmitida o procesada de otra manera. Un código es un sistema para traducir información de un sistema de representación a otro . Esta es una definición muy general. Debemos tener cuidado de no confundir el concepto de una representación y el de un código de una representación (la fuente ) a otra (el destino ).

Una representación puede tomar muchas formas, como voltaje eléctrico variable, puntos de color en papel, cadena de caracteres, números, cadenas binarias de 0 y 1, etc. Es importante distinguir entre representación analógica y formal (o lógica o abstracta) .

Una representación analógica / física es un dibujo, un nivel de voltaje variable, una forma (para una letra).

Una representación lógica / formal / abstracta es una representación matemática con gráficos abstractos, cadenas de símbolos u otras entidades matemáticas.

Aunque parte de la información puede ser originalmente analógica, generalmente la convertimos en una representación lógica para poder definir con precisión su procesamiento por medios matemáticos o por personas.

Por el contrario, al tratar con la representación lógica utilizando dispositivos físicos, como una computadora o transmisores, necesitamos darle una forma analógica a la representación lógica.

Para el propósito de este análisis, la única forma analógica que consideramos es la utilizada para la transmisión, como se describe en el estándar. Pero incluso entonces, consideraremos que el primer paso es interpretar esta representación analógica como una implementación directa de una representación lógica estructurada idénticamente, sobre la cual construimos nuestro análisis de qué tipo de código puede ser el código Morse. La teoría del código es un cuerpo matemático de conocimiento basado en el análisis de representaciones lógicas.

Sin embargo, volveremos sobre la transición analógica / lógica en la discusión al final.

Códigos: definiciones

Nuestro punto de vista lógico es que el código se utiliza para traducir las fuentes de cuerdas en un alfabeto fuente a un alfabeto objetivo T . A menudo se da el caso de que ambos alfabetos son idénticos, generalmente binarios, cuando el propósito es agregar alguna propiedad adicional a la representación de la información, como hacerla más resistente a los errores (detección y corrección de errores), o hacer que la representación sea más pequeña eliminar la redundancia (compresión de código sin pérdida) y posiblemente con la pérdida cuidadosamente controlada de cierta información (compresión con pérdida).ST

Sin embargo, el propósito del código Morse es proporcionar solo una forma de representar cadenas en un alfabeto grande, en cadenas basadas en un alfabeto mucho más pequeño (en realidad binario), utilizando un alfabeto intermedio casi binario (puntos y guiones) para adaptarse mejor al humano percepción y habilidades de manipulación. Esto se logra mediante lo que se llama código de longitud variable :

Usando términos de la teoría del lenguaje formal, la definición matemática precisa es la siguiente: Sea y T dos conjuntos finitos, llamados alfabetos fuente y destino, respectivamente. Un código C : S T es una función total que asigna cada símbolo de S a una secuencia de símbolos sobre T , y la extensión de C a un homomorfismo de S a T , que naturalmente asigna cada secuencia de símbolos fuente a secuencia de símbolos de destino, se conoce como su extensión.STdo:STSTdoST

Llamamos palabra de código de la imagen de un símbolo s S .do(s)TsS

Un código de longitud variable es decodificable de forma única si el homomorfismo correspondiente de S en T es inyectivo . Eso significa que cualquier cadena en T puede ser la imagen de como máximo una cadena en S . También decimos que el código no es ambiguo , lo que significa que cualquier cadena puede decodificarse sin ambigüedad, si es que lo hace.doSTTS

Un código de longitud variable es un código de prefijo si ninguna palabra de código es el prefijo de otro. También se denomina código instantáneo o código sin contexto . La razón de estos nombres es que, cuando lee una cadena de destino que comienza con una palabra de código de un código de prefijo, reconoce el final de la palabra de código tan pronto como lee su último símbolo, sin tener que saber / leer el siguiente símbolo. Como consecuencia, los códigos de prefijo son inequívocos y muy fáciles de decodificar rápidamente.w

Se muestra fácilmente que la decodabilidad única y la propiedad del prefijo se cierran bajo la composición de códigos.

Tenga en cuenta que la definición de homomorfismo implica que no existe una separación especial entre las palabras de código. Es su estructura, como la propiedad del prefijo, lo que permite identificarlos sin ambigüedades.

De hecho, si existieran tales símbolos de separación, tendrían que ser parte del alfabeto objetivo, ya que serían necesarios para decodificar la cadena del alfabeto objetivo. Entonces sería bastante simple volver al modelo teórico de código de longitud variable agregando el separador a la palabra de código anterior. Si eso aumentara la dificultad contextual (debido, por ejemplo, a múltiples separadores), eso solo sería una pista de que el código es más complejo de lo que parece. Esta es una buena razón para apegarse al modelo teórico descrito anteriormente.

El código Morse

El código Morse se describe en el estándar en tres niveles:

  • 3) está destinado a proporcionar una codificación de texto en lenguaje natural, utilizando 57 caracteres (27 letras, 10 dígitos, 20 símbolos y ponderaciones) y un espacio entre palabras para cortar la cadena de caracteres en palabras. El espacio entre palabras se usa como un carácter especial, que se puede mezclar con los otros, lo cual señalaré SEP.

  • 2) Todos estos caracteres deben codificarse como sucesiones dash y dot, utilizando un espacio entre letras, que debo señalar sep, para separar el dashy dotde una letra de los de la siguiente letra.

  • 1) El dashy dot, así como sepse codificarán como señal o ausencia de señal (llamado espaciado) con una longitud definida con precisión en términos de alguna unidad aceptada. En particular, la dashy que dot codifica una letra debe estar separada por un espacio entre elementos, que debo señalar σ.

Esto ya requiere algunas conclusiones.

El mensaje que se transmitirá y recibirá en forma analógica es una sucesión de unidades de longitud (longitud del espacio o longitud del tiempo), de modo que una señal esté encendida o apagada durante toda la duración de cada unidad como se especifica en el anexo 1, Parte I, sección 2 de la norma :

2   Spacing and length of the signals
2.1 A dash is equal to three dots.
2.2 The space between the signals forming the same letter is equal to one dot.
2.3 The space between two letters is equal to three dots.
2.4 The space between two words is equal to seven dots.

Esta es claramente una codificación analógica en lo que se conoce como un flujo de bits, que se puede representar lógicamente en notación binaria mediante una cadena de 0ans 1, que representa el análogo apagado y encendido .

Para abstraer los problemas relacionados con la representación analógica, podemos considerar que los mensajes de código Morse se transmiten como cadenas de bits, que notaremos con 0y 1.

Por lo tanto, el extracto anterior del estándar se puede expresar lógicamente como:

  • 0. A dotestá representado por 1.
  • 1) A dashestá representado por 111.
  • 2) Un espacio entre elementos σestá representado por 0.
  • 3) Un espacio entre letras sepestá representado por 000.
  • 4) Un espacio entre palabras SEPestá representado por 0000000.

Entonces podríamos ver el código Morse como el uso de 5 palabras de código en binario para codificar estos 5 símbolos. Excepto por el hecho de que no es así como se describe el sistema, hay algo más, y no es la forma más conveniente en la que se pueda pensar, desde un punto de vista ingenuo o matemático.

Tenga en cuenta también que esta descripción está destinada a laicos, no a especialistas en teoría de códigos. Por esa razón, describe más la apariencia visible que la estructura interna que lo justifica. No tiene ninguna razón para excluir otras descripciones que sean compatibles con esta, aunque matemáticamente más estructuradas, para enfatizar las propiedades del código.

Pero primero, debemos tener en cuenta que la descripción completa del código involucra 3 niveles de representación, inmediatamente reconocibles:

  • 3) El texto, compuesto por una cadena de caracteres, incluidos SEP.
  • 2) La codificación de una cadena de letras como una cadena de dot, dashy sep.
  • 1) La codificación de una cadena de nivel 2 de estos tres symbolscomo una cadena binaria.

Posiblemente podamos discutir qué símbolos están codificados en qué, pero es un aspecto esencial del código Morse que tiene estos tres niveles de representación, con caracteres en la parte superior, dots y dashes en el medio, y bits 0y 1en la parte inferior .

Esto implica que necesariamente hay dos códigos, uno del nivel 3 al nivel 2 y el otro del nivel 2 al nivel 1.

Analizando los tres niveles de representación

Para tener un análisis consistente de este sistema de codificación de 3 niveles, primero debemos analizar qué tipo de información es relevante en cada nivel.

  • 1) La cadena de bits, por definición, y por necesidad de su representación analógica, se compone solo de 0y 1.

  • 3) A nivel de texto, necesitamos un alfabeto de 58 símbolos, incluidos los 57 caracteres y el espacio entre palabras SEP. Todos los 58 tienen que tener en última instancia una codificación binaria. Pero, aunque el estándar del código Morse especifica estos 57 + 1 caracteres, no especifica cómo deben usarse para codificar la información. Ese es el papel del inglés y otros idiomas naturales. El código Morse proporciona otro sistema con un alfabeto de 58 símbolos, sobre los cuales podrían construir un código de 58 arios, pero el código Morse no es en sí un código de 58 arios.

  • 2) En el nivel doty dash, todo lo que necesitamos son estos dos símbolos para codificar los 57 caracteres, es decir, proporcionar una palabra de código para cada uno como una cadena de doty dash, junto con un separador seppara marcar cuando una letra termina y otra comienza. También necesitamos algunos medios para codificar el espacio entre palabras SEP. Podríamos intentar proporcionarlo directamente en el nivel 1, pero esto estropearía la organización del código, que de otro modo estaría estructurada en niveles.

De hecho, la descripción de la norma podría ser criticada por hacer justamente eso. Pero los autores pueden haber pensado que su presentación sería más fácil de entender para el usuario promedio. También sigue una descripción tradicional del código Morse, anterior a este tipo de análisis matemático.

Esto requiere varios comentarios:

  • en el nivel 3, el nivel de letra, el espacio entre letras sepya no tiene sentido. Esto es bastante normal, ya que no tiene más significado en el universo de las letras que el espacio que separa dos caracteres escritos en papel. Es necesario en el nivel 2 reconocer las palabras de código que representan las letras, pero eso es todo.

  • de manera similar en el nivel 2, el espacio entre elementos σya no tiene sentido. No tiene ningún significado en el mundo de doty dash, pero sólo es necesario en el nivel 1 para identificar las palabras de código binario que representa dot, dash. Pero en el nivel 1, no se distingue del bit 0.

Entonces el espacio entre elementos σya no es nada especial. Es solo un uso de 0.

Σ2Σ1

dot10dash1110

Σ2sep0000dotdash00sep0dotdash0

Σ2=dotdashsepdo21:Σ2Σ1

  • dot10

  • dash1110

  • sep00

Y tenemos la buena sorpresa de descubrir que ninguna palabra de código es el prefijo de otra. Por lo tanto, tenemos un código de prefijo, que es inequívoco y fácil de decodificar.

do32:Σ3Σ2

dotdashΣ3dot dot dash dotF

F dot dot dash dot sep

Σ3SEP00000000sep0dotdashSEP0000

SEPΣ2sep00SEPsep sep

Σ3={UNA,si,...,Z,0 0,1,...,9 9,?,=,...,×,@ @, SEP}do32:Σ3Σ2

  • UNA dot dash se

  • si dash dodot dot sep

  • Z dash dash dot dot sep

  • 7 7 dash dash dot dot dot sep
  • SEP sep sep

do32

doMETROorsmi=do21do32

Por lo tanto podemos concluir que el código Morse puede ser entendida, y fácilmente analizada, como la composición de un prefijo binario que codifica de un alfabeto de 3 símbolos { dot, dash, sep} en un alfabeto binario, y un prefijo que codifica de un alfabeto de 58 símbolos (57 caracteres y un espacio) en el alfabeto de 3 letras.

La composición en sí es una codificación de prefijo de los 58 símbolos en una representación binaria.

Observaciones sobre este análisis.

Siempre es difícil establecer que una presentación de una estructura es lo mejor que se puede encontrar. Sin embargo, parece que el análisis anterior cumple con los criterios establecidos al comienzo de esta respuesta: cercanía a la definición de 3 niveles, presentada formalmente de acuerdo con la teoría de codificación actual, simplicidad y evidencia de las principales propiedades del código.

Tenga en cuenta que no tiene mucho sentido buscar propiedades de corrección de errores. Es posible que el código Morse ni siquiera detecte un error de un solo bit, ya que simplemente puede cambiar dos doten uno dash. Sin embargo, solo causa errores locales.

Con respecto a la compresión, la codificación ternaria se diseñó para reducir aproximadamente el número de puntos y rayas, en un tipo aproximado de codificación Huffman . Pero los dos códigos compuestos podrían fácilmente hacerse más densos.

Con respecto al tamaño de los alfabetos, no hay opción para el alfabeto binario y el de 58 símbolos. El alfabeto intermedio podría contener más símbolos, pero ¿cuál sería el propósito?

Sin embargo, algunas personas se sentirían inclinadas a reconocer el espacio DETen el nivel 2, haciendo que el alfabeto sea cuaternario y luego usándolo directamente en el nivel 3, codificado como sí mismo en el nivel 2.

DET0000do21doMETROorsmi

De hecho, tal elección haría que la cadena binaria sea 0000ambigua, decodificable como SEPo como sep sep. La ambigüedad tendría que resolverse con una regla contextual que sepno puede seguirse, lo que hace que la formalización sea más compleja.

La importancia de la transición analógica a la lógica.

Este análisis se basa en gran medida en el hecho de que la descomposición de la señal de encendido / apagado en unidades de igual longitud indica claramente una representación analógica de una cadena binaria. Además, las longitudes en unidades son exactamente correctas para el análisis anterior, que parece poco probable que haya sucedido por casualidad (aunque es posible).

Sin embargo, desde una mirada (demasiado superficial) a la patente original 1647 , no parece haber sido tan preciso, con oraciones como (en la parte superior de la página 2):

El signo de un número distinto, o de un número compuesto cuando se usa en una oración de palabras o de números, consiste en una distancia o espacio de separación entre los caracteres de mayor extensión que la distancia utilizada para separar los caracteres que componen dichos caracteres distintos. o número compuesto.

Tampoco era probable que las personas que luego enviaban en mano o recibían por oído fueran tan precisas. De hecho, su puño , es decir, su sincronización, a menudo era reconocible. Esta vista también está respaldada por el hecho de que las longitudes de espacio no siempre se respetan , particularmente cuando se aprende el código Morse.

Estas situaciones corresponden a una vista analógica del código como señal corta (punto), señal media (guión) y pausa corta, media y larga. La transposición directa a un alfabeto lógico daría naturalmente un alfabeto quinario , en el que los 58 símbolos deben codificarse. Esto, por supuesto, ya no es una presentación de 3 niveles del código Morse.

Sin embargo, para tener sentido (y posiblemente evitar la ambigüedad), este alfabeto debe usarse con la restricción de que dos símbolos de señal ( doto dash) no pueden seguirse, y que los símbolos de pausa tampoco pueden seguirse. El análisis del código y sus propiedades se haría más complejo, y la forma natural de simplificarlo sería hacer lo que se hizo: introducir los tiempos adecuados para convertirlo en la composición de dos códigos, lo que lleva al análisis bastante simple dado anteriormente ( recuerda que incluye mostrar que el código es prefijo).

Además, no es estrictamente necesario seguir tiempos exactos en la representación analógica. Dado que el decodificador de la traducción analógica puede distinguir pausas cortas, medias y largas, por cualquier medio, simplemente debe imitar lo que se hizo en el caso binario. Por lo tanto, la señal corta y media (necesariamente seguida de una pausa) se reconoce como lógica doto dash. Las pausas cortas se olvidan, ya que solo sirven para marcar el final de doto dash. Las pausas medias se reconocen como sep, y las pausas largas se reconocen como dos sepen sucesión. Por lo tanto, la señal analógica se representa en un alfabeto ternario, que se puede usar como antes para codificar el alfabeto de 58 símbolos. Nuestro análisis inicial puede usarse incluso cuando los tiempos no se respetan estrictamente.

Alternativamente, la alternancia señal-pausa podría usarse para convertir este alfabeto quinario en uno ternario, manteniendo solo las tres duraciones como símbolos del alfabeto y utilizando el análisis contextual para determinar si una duración dada es señal o pausa. Pero esto es nuevamente un poco complejo de analizar.

Esto solo muestra que hay muchas formas de ver las cosas, pero no son necesariamente convenientes y es posible que no todas se presten fácilmente al análisis con las herramientas matemáticas que se han desarrollado para analizar códigos.

Se pueden encontrar más referencias a las patentes en Internet.

Conclusión

Dados los tiempos precisos del estándar, una buena respuesta parece ser considerar el código Morse como la composición de una codificación de prefijo ternario (de 58 caracteres) en un alfabeto de 3 símbolos, compuesto con una codificación de prefijo binario de estos tres símbolos.

Sin la sincronización precisa del estándar, el nivel binario ya no puede considerarse. Entonces, la decodificación analógica a lógica tiene lugar naturalmente en el nivel del alfabeto intermedio de doty dash. Sin embargo, el decodificador analógico a lógico puede decodificar el alfabeto de los 3 símbolos anteriores, preservando así la aplicabilidad de nuestro análisis.


1
Mueva cualquier conversación a chat.stackexchange.com/rooms/21638/…
Wandering Logic

1
Los comentarios no son para discusión extendida; esta conversación se ha movido al chat .
Raphael

Pregunta: En el argumento ternario, comienza con un alfabeto {0,1}, a partir de esto construye cuatro símbolos {dot = 10, dash = 1110, sep1 = 00, sep2 = 000000}, a partir de esto construye un conjunto de palabras de código ternario permitiendo sep2 = sep1 sep1 sep1 . Se eligió el conjunto de palabras de código porque vincula implícitamente los símbolos a la codificación, lo cual es conveniente, y el OP pregunta por el almacenamiento binario. Sin embargo, ¿por qué no puede usar el conjunto de palabras de código {rest = 0, on = 1} y luego decir "dot = on", "dash = on on on", sep0 = "off", sep1 = "off off off" , sep2 = "apagado apagado apagado apagado apagado apagado" (donde sep0 es el descanso entre señales)?
Jason C

^ En cuyo caso, el argumento es para una palabra de código binario establecida sobre una ternaria, pero utilizando un argumento similar e igualmente fuerte como el ternario dado aquí. Es decir, la elección de dar un significado especial a múltiples separadores en una fila pero no dar un significado especial a todo lo demás en una fila es fundamental para el argumento ternario, pero también parece arbitrario.
Jason C


28

Esta respuesta no es tan larga como parece; ¡Este sitio solo pone mucho espacio entre los elementos de la lista! Actualización: en realidad se está haciendo bastante largo ...

El Código Morse no es "oficialmente" binario, ternario, cuaternario, quinario o incluso 57 años (si cuento correctamente). Discutir sobre cuál es sin contexto no es productivo. Depende de usted definir cuál de esos cinco se basa en su aplicación y los requisitos de codificación para su situación específica . Para ese fin, hay ventajas y desventajas para cada tamaño de conjunto de símbolos, que debe considerar para su situación antes de tomar una decisión.

Para la base, M.1677 , el estándar internacional del Código Morse, sección 2, define los tiempos como:

2 Espaciado y longitud de las señales.
2.1 Un guión es igual a tres puntos.
2.2 El espacio entre las señales que forman la misma letra es igual a un punto.
2.3 El espacio entre dos letras es igual a tres puntos.
2.4 El espacio entre dos palabras es igual a siete puntos.

Tenga en cuenta que eso define solo los tiempos, por ejemplo, un guión no significa lo mismo que tres puntos, es simplemente la misma longitud. La unidad de tiempo base es un punto.


Binario

Podemos elegir binario si lo deseamos. Es posible representar el Código Morse con "binario estricto", como lo llama, el enfoque de ese autor fue asignar los dígitos a "punto" y "guión". Ese enfoque no funciona y no creo que el autor tenga una comprensión firme del código Morse. Pero hay un enfoque diferente que funciona. Si elegimos binario, esencialmente representamos si la señal es alta o baja con cada símbolo ocupando un solo segmento de tiempo de punto largo. Tenga en cuenta que este es también el enfoque descrito en la página Lista de códigos binarios que citó.

También se pueden elegir otras codificaciones binarias (por ejemplo , la respuesta de Bob Jarvis ) a expensas de los aumentos en la dificultad de decodificación de nuevo al Código Morse audible (la codificación de Bob no se puede decodificar sin estado, por ejemplo, la compensación es que proporciona secuencias codificadas más cortas).

Símbolos:

  • Bajo, apagado, etc. (0)
  • Alto, encendido, etc. (1)

Ejemplos de codificación:

  • Separador de señal: 0
  • Separador de letras: 000
  • Separador de palabras: 0000000
  • Tres puntos: 10101
  • Tres guiones: 11101110111
  • La palabra "hijo": 101010001110111011100011101
  • La frase "es un": 10100010101000000010111

Pros:

  • Tamaño mínimo del conjunto de símbolos
  • Gestionado fácilmente con lógica digital típica
  • Fácil de decodificar en código Morse audible (suponiendo que no se realice la validación) decodificación sin estado y no requiere almacenar información sobre el tiempo de los símbolos (cada símbolo tiene la misma longitud).

Contras:

  • Codificaciones largas.
  • Muchas oportunidades para codificaciones inválidas.
  • Los significados de los símbolos individuales (0, 1) dependen del contexto.


Ternario

Con esta opción, definimos los espacios entre letras y palabras como descansos, y los espacios entre las señales están implícitos (aunque puede optar por requerir símbolos de descanso de longitud de punto entre las señales, si le conviene más).

Símbolos:

  • Resto de longitud de punto (0)
  • Punto (1)
  • Guión (2)

Ejemplos de codificación:

  • Separador de letras: 000
  • Separador de palabras: 0000000
  • Tres puntos: 111
  • Tres guiones: 222
  • La palabra "hijo": 11100022200021
  • La frase "es un": 11000111000000012

Pros:

  • Tamaño pequeño del conjunto de símbolos.
  • El separador de señal ya no es necesario.
  • Longitudes de codificación más cortas que las binarias.
  • Elimina algunas codificaciones no válidas (por ejemplo, 0110 con la opción binaria ya no es posible).

Contras:

  • Todavía largas codificaciones.
  • Todavía hay muchas posibilidades de codificaciones no válidas, en particular, los restos.
  • No se puede decodificar sin estado menos que elija colocar puntos de longitud de punto explícitos entre las señales.
  • Los separadores de señal son implícitos ‡ a menos que elija colocar restos de longitud de punto explícitos entre las señales.
  • Algunos significados de símbolos individuales (0) dependen del contexto.


Cuaternario

Símbolos:

  • Separador de letras (0)
  • Separador de palabras (1)
  • Punto (2)
  • Guión (3)

Ejemplos de codificación:

  • Tres puntos: 222
  • Tres guiones: 333
  • La palabra "hijo": 2220333032
  • La frase "es un": 220222123

Pros:

  • Longitud codificada muy corta.
  • Se reduce la posibilidad de codificaciones no válidas.
  • Los símbolos son semánticamente exactos.
  • Posiblemente, más legible para los humanos.

Contras:

  • Gran tamaño de conjunto de símbolos.
  • No se puede decodificar sin estado.
  • Los separadores de señal son implícitos.


Quinario

Una interpretación directa de la lista de Wikipedia. Tenga en cuenta que esto es muy similar a la elección binaria, excepto que las diversas combinaciones válidas de 0 o 1 binarios reciben sus propios símbolos.

Símbolos:

  • Separador de señal (0)
  • Separador de letras (1)
  • Separador de palabras (2)
  • Punto (3)
  • Guión (4)

Ejemplos de codificación:

  • Tres puntos: 30303
  • Tres guiones: 40404
  • La palabra "hijo": 303031404041403
  • La frase "es un": 3031303032304

Pros (en comparación con el cuaternario):

  • Se puede decodificar sin estado.
  • El único tamaño de conjunto de símbolos que representa inequívocamente, de forma directa y concisa los cinco objetos mencionados en la sección 2 de la norma: "punto" (al que se refieren todos los tiempos), "guión", "espacio entre las señales", "espacio entre dos letras "," espacio entre dos palabras ".

Contras (en comparación con el cuaternario):

  • Mayor posibilidad de codificaciones no válidas.
  • Mayores longitudes de codificación sin agregar información adicional (la compensación es facilidad de decodificación)
  • No es tan fácil de decodificar como la elección binaria, ya que cada símbolo tiene una duración diferente en el tiempo y esta asociación debe mantenerse en algún lugar.


57-ario:

Incluido para completar.

Símbolos:

  • 26 letras
  • 10 números
  • 20 signos de puntuación y signos varios
  • Separador de palabras (espacio)

Ejemplos de codificación:

  • La palabra "hijo": son
  • La frase "es un": is a

Pros:

  • Codificación más corta
  • Legible por humanos
  • Las codificaciones inválidas son imposibles.

Contras:

  • Conjunto de símbolos más grande
  • Difícil de decodificar en código Morse; necesario para mantener tablas de secuencias de salida del Código Morse para cada símbolo y necesario para detectar límites de palabras y letras adyacentes para determinar dónde insertar varios restos.
  • Imposible expandirse más allá de la especificación del Código Morse sin agregar nuevos símbolos (compensación por ser inmune a codificaciones no válidas).
  • Los separadores de señal y letra están implícitos.

Terminación

Para el almacenamiento como un flujo de símbolos en un dispositivo, si necesita hacer eso, vale la pena señalar que M.1677 define secuencias de terminación de transmisión y mensajes. De la parte II:

5 Cada telegrama se terminará con una señal cruzada (. -. -.)
6 El final de la transmisión se indicará con la señal cruzada (. -. -.) Seguida de la invitación para transmitir la señal K (-. -)
7 El final del trabajo será indicado por la estación que transmitió el último telegrama. La indicación correcta es la señal de finalización del trabajo (... -. -)

Desafortunadamente, el estándar no dice nada sobre la capacidad de distinguir, por ejemplo, la cadena "+ K" de la secuencia ( fin de telegrama , invitación a transmitir ). Sin embargo, el final del trabajo es único. Si está almacenando código morse, entonces, deberá elegir cómo desea indicar el final de una secuencia almacenada.

Si está almacenando una conversación completa, por ejemplo, y está usando el conjunto de símbolos binarios, podría considerar razonablemente que el fin del trabajo es el indicador de fin de secuencia, representado como la secuencia de bits única 101010111010111. Debe considerar el tipo de los datos que está almacenando (por ejemplo, fragmentos de mensajes, mensajes completos, conversaciones completas), así como las facilidades que le ofrece su medio de almacenamiento (por ejemplo, capacidad de prefijar con la longitud del mensaje) antes de decidir. Supongo que podría llegar a definir su propio indicador de fin de secuencia. En cualquier caso, estos son todos asuntos de almacenamiento subyacente y tienen demasiadas posibilidades para enumerarlos aquí. La elección depende de usted según lo que sea apropiado para su situación.


No se puede decodificar sin estado: estas codificaciones requieren que se mantenga algún estado para decodificar en código Morse audible. Todos requieren "Si el símbolo anterior era un punto / guión y el símbolo actual es un punto / guión, entonces inserte el separador de señal". Si bien podría intentar "hacer trampa" y agregar automáticamente un separador de señal a todos los símbolos al tiempo que reduce el separador de palabras a 5 restos y el separador de letras a 1, el hecho M.1677 no prohíbe explícitamente los separadores de palabras consecutivos, lo que rompe este error.

Los separadores de señal están implícitos: esto está directamente relacionado con la nota anterior pero más orientado semánticamente. Estas codificaciones tienen separadores de señal implícitos en su notación. Es decir, "zzz" es intuitivamente tres z separadas, los límites están "superpuestos" en lo que sea que separe los símbolos en la codificación misma. Considere la descripción "tres puntos seguidos"; intuitivamente tomamos esto para significar tres separadospuntos, pero si los separadores no estuvieran implícitos, esto podría tomarse como indistinguible de un guión. Solo las representaciones binarias y quinarias de estilo Wikipedia (o ternarias con la opción de separador de señal explícito) eliminan aquí toda ambigüedad y "atajos", que pueden ser de gran valor dependiendo de la situación. Es por esta razón que existe un fuerte argumento para la elección quinaria.


TL; DR:

Como puede ver, hay ventajas y desventajas para cada uno, y depende de usted decidir cómo desea tratarlo según sus requisitos . No hay respuesta correcta. Podría intentar argumentar que uno es más apropiado que el otro en general, pero estos argumentos se reducirían a preferencias pedantes, ya que sin contexto, no hay una respuesta correcta.

Ahora, todo lo dicho, en mi propia opinión, la elección quinaria es la representación que me parece más "correcta" para el propio Código Morse (originalmente había favorecido el cuaternario). Es la única opción que ofrece todo lo siguiente:

  • Símbolos sin contexto (un símbolo en sí mismo contiene toda la información sobre su significado sin examinar los símbolos adyacentes).
  • Representación de todas las primitivas definidas en M.1667.
  • Los separadores (señal, letra, palabra) no están implicados por la notación o la codificación subyacente (esto es importante, si escribí { dot, dot, dash }, esos ,son significativos y fáciles de pasar por alto).

Sin embargo, hay fuertes argumentos para todos. Los argumentos relacionados con la codificación también son aplicables al tratamiento de Morse. No hay una respuesta 100% concreta, pero ciertamente puede ser un buen tema para debatir con sus amigos en el bar.

. . . -. -


1
Mueva cualquier conversación a chat.stackexchange.com/rooms/21638/…
Wandering Logic

1
Los comentarios no son para discusión extendida; Esta conversación se ha movido al chat .
Raphael

Sigue refiriéndose a la decodificación sin estado en sus argumentos. En la teoría de la codificación, los estados parecen ser utilizados muy raramente, en códigos convolucionales, que son una familia de códigos de corrección de errores. Esto está completamente fuera de tema ya que el código Morse es cualquier cosa menos corrección de errores. De hecho, ni siquiera puede detectar algunos errores de un bit, y mucho menos corregirlos. Usted crea varios tipos de códigos arbitrarios como una versión del código Morse, pero no aportan ningún entendimiento. ¿Por qué presentarlos? No requiere estados, es decir, codificación homomórfica, parece un requisito mínimo. Y te pierdes las codificaciones interesantes. cc @KorayTugay
babou

@babou Statless argumentos de decodificación?
Koray Tugay

@babou No me importa tener un par de puntos fuera de tema. Por supuesto, los conjuntos de símbolos son arbitrarios; ese es precisamente el punto que estoy haciendo con esta respuesta. La palabra ternaria establecida sobre el argumento del código de prefijo binario es igualmente arbitraria. A primera vista, no, pero fundamentalmente, tomó la decisión arbitraria de basar el argumento en un conjunto de palabras de código con un alfabeto de dos letras (0 y 1). Es una elección arbitraria, porque la elección de dar un significado especial a "sep sep sep" pero no hacer eso a una "unidad 1" es arbitraria. También podría decir fácilmente que "guión" es "punto punto punto" y argumentar a favor de binario sobre ternario.
Jason C

5

A pesar de mis pensamientos iniciales sobre esto, resulta que esta pregunta puede formalizarse de una manera que admite una respuesta bastante precisa (módulo de un par de cuestiones de definición). La respuesta resulta ser 3 o 4, es decir, ternaria o cuaternaria. La respuesta de "todo va de 2 a 57" para complacer a la multitud es correcta solo en el sentido de que si alguien te pide una caracterización de grupos abelianos, le dices que son grupos.

Comencemos mirando la codificación física del código Morse. Eso es realmente B ASK , es decir, la codificación de desplazamiento de amplitud binaria, que es solo una forma elaborada de decir que hay dos niveles de amplitud física (eléctrica / óptica, etc.) para que codifiquemos nuestro mensaje. Entonces, la pregunta inmediata es: ¿no significa que la respuesta es que el código Morse es binario? Bueno, es binario solo de una manera no informativa, en el sentido de que la señal binaria de encendido / apagado enviada por el cable no corresponde directamente a líneas o puntos. En este nivel vago de correspondencia, incluso podríamos enviar el código ASCII (con la codificación de bits directa y obvia) y llamarlo "Morse" y / o "binario"; Lo mismo se aplicaría a cualquier código Huffman (en lugar de ASCII).

Entonces, ¿cómo podemos hacer que la correspondencia sea más precisa y al mismo tiempo formalizar nuestra pregunta? La teoría de la codificación viene a ayudar. DejarMETROser el conjunto de símbolos "morsables", aproximadamente 66 símbolos si entiendo el universo del código Morse correctamente; esto incluye las 26 letras latinas, los dígitos 0-9 y un montón de accesorios como signos de puntuación, "prosignos", etc. En realidad no es tan importante lo que son. Un código es un mapeo inyectivo do:METROT dónde T (no T) es un conjunto de palabras de código. Para ser físicamente representable en nuestro hardware BASK subyacente, requerimos queT{0 0,1}, es decir, nuestras palabras de código deben ser cadenas de bits; tenga en cuenta que esto implicadoLos valores son cadenas de palabras de código, por lo tanto, cadenas de cadenas de bits, pero finalmente linealizadas como cadenas de bits.

Para ser una caracterización fiel del código Morse, necesitamos T para contener algunos equivalentes directos de líneas y puntos, en el sentido de que debe haber una biyección entre estas palabras de código y los puntos y líneas que representan el código Morse en papel. T también se requiere que sea [casi] un código descifrable único, lo que significa que cualquier factorización de un elemento de T en términos de elementos / palabras de código de T[idealmente] debe ser único. (Tenga en cuenta que algunos autores, por ejemplo , Berstel , ni siquiera llamanTun código a menos que sea descifrable de forma única, pero otros, por ejemplo, Steve Roman tienen una terminología diferente en la que cualquier mapeo es un código, pero aquellos que son descifrables de manera única solo se dicen y abrevian códigos UD. Aquí voy solo la última terminología. También verás un poco más tarde por qué dije "idealmente".)

Ya que do solo se requiere que sea una inyección y no una inyección, podemos poblar Tcon "basura" arbitraria más allá de lo que se necesita para obtener un código UD, siempre y cuando las cadenas generadas por esta basura no sean la preimagen de algo morsable. Por ejemplo, una cadena de exactamente 42 puntos no corresponde a nada en ninguna variante del código Morse que vi. Entonces, cuando preguntamos si el código Morse es binario, ternario, cuaternario, quinario, etc., la pregunta debería ser la cardinalidad mínima deT con las dos propiedades anteriores, es decir: es [casi] un código UD y tenemos una biyección obvia entre la "línea" y el "punto" en papel a algunos elementos de T.

Hay dos formas de proceder en la construcción T, ya sea de arriba hacia abajo al observar que necesita un separador entre la representación de letras Morse en línea y en papel para obtener un código UD, o de abajo hacia arriba, ya que en el código Morse internacional de la UIT tenemos el tiempo -longitudes de las líneas, puntos y varias pausas. Usaré el último enfoque aquí porque hay numerosas formas de obtener algunosT de lo contrario, es decir, puede elegir períodos de tiempo bastante arbitrarios, por ejemplo, el código Morse americano desaparecido usó líneas más cortas que la versión ITU.

Comencemos con la representación derivada de la longitud de señal de ITU que tiene cinco palabras de código básicas, generadas a partir de la señal de "encendido" de longitud de unidad (1) y la señal de "apagado" (0): just-dot(1), just-line(111), unit-space(0) , letter-space(000) y word-space[asumió siete 0 en el Morse internacional pero puede variar en la práctica]. Observe de inmediato que unit-spacesolo puede aparecer seguido de un 1 justo después just-doty just-line; y esto0 0-determinación de just-doty just-line(que es un código de coma; más sobre esto más adelante) es realmente necesario, de lo contrario, ni siquiera podría distinguir las líneas de los puntos. Esto le da la reducción obvia a cuatro palabras de código con:

  • dit= just-dot unit-space= 10 y
  • dah= just-line unit-space= 1110.

Así que eso es el código Morse cuaternario: dit, dah, letter-space, word-space. La siguiente observación es que word-spacese puede aproximar (o incluso suponer que es) dos letter-spaces, es decir, seis ceros. Entonces, ¿cómo es cómo se obtiene el conjunto de palabras de código ternario; Como referencias para esta línea de razonamiento, véase, por ejemplo, [1] [2] .

También hay una razón técnica para preferir las palabras de código ternario: T={10,1110,000}es un código descifrable único, de hecho es un código de prefijo. sin embargo{10,1110,000,0 07 7} (o la versión con solo seis ceros) ya no es descifrable únicamente porque 0 010=0 030 07 7=0 07 70 03entonces hay una factorización no única. Si bien esto es teóricamente un problema, no es una preocupación práctica porque el "metrónomo" humano tiene dificultades para medir silencios muy largos de todos modos, por lo que básicamente cualquier silencio más largo que una cierta longitud se supone (por un humano) como unword-space especie de.

También tenga en cuenta que si se pega 0 0 en ese conjunto también (es decir, tener una vista "quinaria"), se pone "aún más mal", en el sentido de que incluso 000ya no tiene una factorización única (ya que también es una palabra de código). Además,0 0 no está en la preimagen de ningún símbolo Morse, por lo que es basura en T, al igual que puedes agregar 1420 0 a T; de hecho, agregar este último es menos problemático ya que a diferencia de agregar0 0 no hará que el código pierda la propiedad UD.

La reducción / abstracción de dit, dah, letter-spacecomo palabras de código binario a tres símbolos abstractos (Trits) es útil para mostrar rápidamente que el (ternaria) código Morse es UD; eso es obvio de inmediato porque letter-spaceactúa como una coma, es decir, el código Morse ternario es un código de coma. (Tenga en cuenta que otros autores definen el "código de coma" en un sentido más restrictivo donde todos los símbolos que no sean la coma son el mismo; lo estoy usando aquí en el sentido más amplio dado en "Álgebra postmoderna" de DH Smith , que simplemente significa usar un símbolo de terminación único para cada palabra de código.) También tenga en cuenta que la técnica de código de coma se usa en dos niveles en el código Morse; el just-liney just-dotson terminados por la "coma corta" unit-space=0 0para hacerlos distinguibles unos de otros. Una vez que abstraiga esa construcción a los dos trits diferentes ( dity dah), todas las letras del código Morse también se codifican con comas al terminarlas con000 que el tercer trit.

También puede utilizar el cálculo de la entropía enfoque trit suponiendo una dahy dity letter-spaceson "equivalentes" como trits [3] , en el sentido de que, por ejemplo-'e' toma 2 trits y 'y' toma 5 trits. El enfoque de trit abstracto no es tan útil si le importa lo caro que es transmitir cada símbolo en la codificación BASK Morse real en una línea. Para este último, debe llegar a las longitudes de bits reales de los 3 (o 4) símbolos, que se ven como transiciones en un autómata. Por ejemplo, la letra 'e' toma 5 bits para codificar (as dit letter-space) mientras que 'y' toma 17 bits (tres dahs, uno dity a letter-space). Esta línea de pensamiento se remonta a Shannon (ver págs. 3-4). Más detalles se pueden encontraren "Teoría y codificación de la información" de Blahut , por ejemplo, calcula "un promedio de 9,296 unidades de tiempo de señalización por letra de salida" para el código Morse usando las probabilidades (incondicionales) de letras en inglés. Para una exposición ligeramente diferente (¡por un zoólogo!) Podría mirar JP Hailman's ; obtiene un promedio diferente (10.2) porque asume probabilidades ligeramente diferentes para las letras en inglés, pero por lo demás su análisis es conceptualmente el mismo.

Para resumir esto: puede tomar varias vistas del código Morse, pero algunas son más fructíferas que otras al decir algo interesante al respecto. No conozco ningún análisis que use la vista "quinaria" y para que este modelo no se reduzca a cuatro símbolos, tendría que hacer algunas suposiciones sobre la ocurrencia del espacio unitario que no se mantiene en Morse real , por ejemplo, que podría tener dos pero no necesariamente tres espacios unitarios adyacentes (que no es válido Morse). La vista ternaria le compra un análisis rápido de la decodificación única. La vista más profunda / fructífera es la que ve los 3 o 4 símbolos como realmente representados por cantidades desiguales de bits como en el código Morse real (| dit| = 2, | dah| = 4, | letter-space| = 3 y |word-space| = 6 o 7); Todavía es perspicaz en este nivel bajo considerar los símbolos ternarios / cuaternarios como transiciones en un autómata.

En cuanto a por qué Wikipedia apesta a esto ... bueno, en algunos temas simplemente lo hace. Su artículo principal en http://en.wikipedia.org/wiki/Coding_theory tampoco es realmente algo que recomendaría leer. No puedo decir mucho sobre el libro (Petzold) que ha mencionado que no aparece escrito por un experto en teoría de la información. Petzold solo tiene razón en el sentido de que si los mensajes codificados en Morse constaran de una sola letra, podría decirse razonablemente que están en algún código binario; Sin embargo, si desea enviar palabras, necesita un separador de letras, de lo contrario, el código sería horriblemente no UD, hasta el punto de no ser práctico.


Es un poco tarde aquí para que revise toda la publicación, pero @babou hace un punto válido debajo de que aparentemente Shannon, Blahut y otros han malinterpretado el estándar ITU (actual) (suponiendo que no haya cambiado desde su momento) en lo siguiente tecnicismo: el espacio de la unidad se agrega entre dits y dahs de la misma letra , pero solo letter-spacese agrega entre letras. Esta lectura de la norma parece salir basada en un libro de práctica bastante reciente . Por lo tanto, debemos tomar prestado un 0 de letter-spacecada uno dity dahcuando están en posiciones terminales de una letra, dejando solo dos 0 para el letter-space, es decirT={10,1110,00}. Eso también significa que (por ejemplo) el tamaño de 'e' es de solo 4 bits, no de 5.


Mueva cualquier conversación a chat.stackexchange.com/rooms/21638/…
Wandering Logic

Los comentarios no son para discusión extendida; Esta conversación se ha movido al chat .
Raphael

-1

Originalmente, el código Morse tenía la intención de ser marcas escritas en una tira de papel, pero los operadores de telégrafos pronto pudieron "leer" los clics del equipo. Esta versión de Morse (Morse estadounidense o "tierra") tenía tres elementos de "marca", el punto, el guión y el guión largo.

El uso de International Morse durante el siglo pasado, a través de la transmisión de radio, generalmente se codificaba a mano (en una tecla de telégrafo) y se decodificaba por el oído, al escuchar el patrón de pitidos producidos por el receptor. Los operadores calificados podrían recibir mejores que los no calificados, y algunas personas podrían producir código que fuera más fácil de entender que el de otros. Se decía que un buen operador de transmisión tenía un "buen puño". Un operador inepto se llamaba LID. (Para el origen de "lid", que creo que proviene de un error común en American Morse de enviar LID para DD, daaahh, dit dit, dah dit dit en lugar de dah dit dit, dah dit dit, vea esta referencia: https://english.stackexchange.com/questions/31818/how-did-the-word-lid-come-to-mean-poor-operator-in-the-context-of-telegraph .)

Por lo tanto, se deduce que la "codificación" de Morse en un formato binario depende del propósito y, por lo tanto, de si se debe conservar la calidad de "puño bueno" versus "puño pobre". ¿Una cadena de encendido y apagado debe coincidir con un reloj y "corregirse" por dificultades en la fase o la duración de cada parte de la señal? ¿O se tomarán muestras a una velocidad suficiente para retener variaciones aleatorias o confusas, presumiblemente para su posterior inspección o deleite?


1
Lo sentimos, ¿cómo responde esto a la pregunta?
Koray Tugay
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.