Mors Kodu ikili mi, üçlü mü yoksa soru mu?


27

Kitabı okuyorum: " Kod: Bilgisayar Donanımı ve Yazılımının Gizli Dili " ve 2. Bölümün yazarı:

Mors kodunun ikili olduğu söylenir (kelimenin tam anlamıyla ikie iki anlamına gelir), çünkü kodun bileşenleri yalnızca iki şeyden oluşur - bir nokta ve bir çizgi.

Öte yandan Vikipedi diyor ki:

Kesin konuşmak gerekirse, beş temel unsur olduğu için ikili değildir. Ancak, bu Mors kodunun ikili kod olarak gösterilemeyeceği anlamına gelmez. Özet olarak, bu, telgraf operatörlerinin mesaj iletirken gerçekleştirdikleri işlevdir (sorulara bakınız).

Ama sonra yine, bir başka Wikipedia sayfası 'İkili kodlar Listesi'nde Mors Kodu'yu içeriyor.

Kafam çok karışık çünkü Mors Kodunun üçlü olduğunu düşünüyorum . 3 farklı tür “olasılık” vardır: bir sessizlik, kısa bir bip sesi veya uzun bir bip sesi.

Mors Kodunu 'stirct binary' ile göstermek imkansızdır, değil mi?

'Katı ikili' derken, ikili akışı düşünün: 1010111101010 .. Bir sessizliği, kısa bir bip sesini ve / veya uzun bir bip sesini nasıl temsil edeceğim?

Düşünebilmemin tek yolu bir bilgisayarın uyguladığı 'kelime büyüklüğü'. Ben (ve CPU / kod tercümanı) her seferinde 8 bit okuyacağını biliyorsa, Mors Kodunu temsil edebilirim. Basit bir 1 veya uzun bir bip sesiyle kısa bir bip sesini temsil edebilirim ve sessizlikler örtük olarak uzunluk kelimesiyle gösterilecektir. (Diyelim ki 8 bit diyelim). elim: kelime büyüklüğü.

Benim düşüncem şöyle: 8 bitlik bir kelimeyle kaç bit okunması için ilk 3 biti ve Mors kodu için son 5 biti saklayabilirim. 00110000 gibi 'A' anlamına gelecektir. Ve ben hala 'binary' içerisindeyim ama üçlü kılan kelime boyutuna ihtiyacım var değil mi? İlk 3 bit şöyle der: Aşağıdaki 5 bitten yalnızca 1 bit oku.

İkili yerine, trinary kullanırsak, şöyle bir mors kodu gösterebiliriz: 101021110102110222 vb. 222'yi kullanarak uzun sessizliği kodlayabiliriz, bu nedenle * - * --- * - gibi bir sinyaliniz varsa, şunu gösterebilirsiniz: 102100022210, ancak geldiğiniz yalnızca 1'ler ve 0'ların UNLESS'i ile doğrudan mümkün değildir Bahsettiğim gibi 'sabit' bir kelime boyutu gibi bir şey, ama iyi yorumlamak, Mors Kodu ikili olduğu gibi kaydetmiyor. Piyano gibi bir şey hayal edin, sadece piyano düğmelerine sahipsiniz. Mors Code'da birileri için bir mesaj bırakmak istiyorsunuz ve düğmeleri siyaha boyayabilirsiniz. Açık bir mesaj bırakmanın bir yolu yok, değil mi? En az bir renge daha ihtiyacın var, böylece sessizlikleri (karakterler ve kelimeler arasındakiler) koyabilirsin.

Mors Kodunu 57-ary'da veya başka bir şekilde temsil edip edemediğinizi sormuyorum.

Bu konuda yazara (Charles Petzold) e-posta gönderdim; “Kod” un 9. Bölümünde Mors Kodunun ikili kod olarak yorumlanabileceğini gösterdiğini söylüyor.

Düşüncelerimin neresinde hatalıyım? Kitapta okuduğum şey, Mors Kodu'nun İkili olduğunun bir gerçeği olup olmadığı mı? Her nasılsa tartışılabilir mi? Mors Kodu niçin bir Vikipedi sayfasında sorgulanmıyor ve aynı zamanda İkili Kodların Listesi sayfasında listeleniyor ?

Düzenleme: Yazara e-posta gönderdim ve bir cevap aldım:

-----Orijinal mesaj-----

Gönderen: Koray Tugay [mailto: koray@tugay.biz]

Gönderilmiş: 3 Mart 2015 Salı 15:16

Kime: cp@charlespetzold.com

Konu: Mors Kodu gerçekten ikili mi?

Efendim, buradaki soruma bir göz atabilir misiniz: Mors kodu ikili mi, üçlü mü yoksa soru mu? hızlı mı?

Saygılar, Koray Tugay

Gönderen: "Charles Petzold"

Kime: "'Koray Tugay'"

Konu: RE: Mors Kodu gerçekten ikili mi? Tarih: 3

Mar 2015 23:04:35 EET

Bölüm 9'un sonlarına doğru "Kod" da Mors Kodunun ikili kod olarak yorumlanabileceğini gösteriyorum.

-----Orijinal mesaj-----

Gönderen: Koray Tugay [mailto: koray@tugay.biz]

Gönderilmiş: 3 Mart 2015 Salı 15:16

Kime: cp@charlespetzold.com

Konu: Mors Kodu gerçekten ikili mi?

Efendim, buradaki soruma bir göz atabilir misiniz: Mors kodu ikili mi, üçlü mü yoksa soru mu? hızlı mı?

Saygılar, Koray Tugay

Zaten internette bulmak gerçekten kolay olduğu için e-postalarını saklamıyorum.



Yorumlar uzun tartışmalar için değildir; bu konuşma sohbete taşındı .
Raphael

Yanlışlıkla sildiğim bağlantıları düzelttim (whoops); Lütfen daha kötü revizyonlara geri dönmekten kaçının.
Raphael

1
@WanderingLogic Doğru, en etkili ve gürültüsüz yaklaşım, yorum temizleme sorusunu sessizce işaretlemek ve yorumların halka açık bir şekilde yorumlanmasını ve tüm yorumları birleştirmek için bir sohbet odası oluşturmayı denemek için bayrakta sohbet etmek üzere taşınmasını önermektir. bağlamsız tüm cevaplar. Bağlantılarınız şimdi de, Raphael'in doğru bağlantıları yayınlamasından dolayı bu konuyu karıştırıyor.
Jason C

1
@ J.-E.Pin Eh, resmi bir tanım vermedim, çünkü soruyu cevaplayan insanların bunu bileceğini ve bunun için bağlamı belirlemek için bir veya iki referansım olduğunu kabul ettim. Vikipedi mükemmel olmaktan uzak olsa bile, bu, burada sıklıkla yapılan tanımların rolünü alabilmelidir. Sorunun, aslında görünüşte yaygın olduğunu fark etmem biraz zaman aldı. Açıkça tanımlamalar, alıntılar, referanslar ve enjektif homomorfizmalar ile biçimsel açıklamalar yaparak, bunların hepsini tekrar yazma sürecinde kendimdeydim. Bitirmeli miyim
babou

Yanıtlar:


19

Mors kodu, üç simgeyi kodlayan bir önek ikili kodunun üstünde bir önek üçlü kodudur (58 karakter kodlaması için).

Bu kabul edildiğinde çok daha kısa bir cevaptı . Bununla birlikte, kullanıcılar arasındaki önemli yanlış anlaşılmaları ve OP'den gelen bir talebi takip ederek, çok daha uzun bir cevap yazdım. İlk "fındık kabuğu" bölümü size bunun özünü verir.

içindekiler

(Büyük) bir özet olarak

"Mors kodu ikili mi, üçlü mü yoksa soru mu?" Kabul edilebilir bir cevap için bazı kriterler belirlenmemişse, olası cevapların karşılaştırılması yoktur. Gerçekten de, uygun kriterler olmadan, neredeyse her türlü yapı için açıklamalar yapılabilir. Seçtiğim kriterler aşağıdaki gibidir:

  • Morse kodunun üç aşamalı tanımını, ikinci aşamadaki nokta / çizgi gösterimi ile yansıtmalıdır;

  • Kodların teorik analizi için geliştirilen sunum ve matematiksel araçlara mümkün olduğunca uygun olmalıdır;

  • mümkün olduğunca basit olmalı;

  • Mors kodunun özelliklerini açıkça göstermelidir.

Bu, bilimsel olarak incelenen temel kod teorisi kavramlarını görmezden gelen ve sistematik bir analiz yanılsaması vererek, temkinli olamayacak kadar hitap eden keyfi bir hacklemeyi engelleme amacı gütmektedir. Bu sitenin bilgisayar bilimi ile ilgili olduğu , programlama ile ilgili olmadığı söyleniyor . Teknik bir soruyu cevaplamak için asgari olarak kurulmuş bir bilim ve kabul edilmiş kavramları kullanmalıyız.

Hızlı bir analizi, standart gösteriler Morse kodu kullanılan bütün semboller sonuçta ikili olarak kodlanmış her birimi için bir sinyal üzerinde olabilir nereye eşit uzunlukta birimlerinin bir dizi, veya kapalı iletilir, çünkü. Bu, Mors mesajlarının nihayetinde mantıksal bir alfabeyle kodlandığını gösterir .Σ1={0,1}

Ancak bu kodun iç yapısından hiçbir şey söylemez. Kodlanacak olan bilgi, 57 karakter ve bir boşluk içeren, (standartlara göre) 58 sembolden oluşan bir alfabenin dizedir. Bu, alfabesine karşılık gelir , son symbl alandır.Σ3={A,B,,Z,0,1,,9,?,=,,×,@,[]}

Ancak, bir ara alfabe standart belirtir olduğu dayalı ve ve muhtemelen diğer semboller. Oldukça açıkΣ2dotdash

  • ki dizeleri içinde dizeleri olarak kodlanacak olan veΣ3Σ2

  • içinde dizeleri içinde dizeleri olarak kodlanmış edilecekΣ2Σ1

Bu nedenle, ve için bir seçenek olmadığı göz önüne alındığında , sorunun şu şekilde anlaşılması gerekir: "Tüm Mors'un yapısını ve özelliklerini en iyi şekilde açıklayabilmek için," ara alfabesinde ne kadar simge düşünmeliyiz? " kod, ayrıca üç seviyeleri arasında iki kodlamalar belirterek gerektirir ".Σ1Σ3Σ2

Mors kodu olması nedeniyle, önek bir sinyal kodunu çözerken önlüyor herhangi belirsizlik, bir sade bir şekilde bu temel özelliğini açıklayabileceğini homomorfik (değişken uzunluk) kodu üçlü alfabesi { , , } ve iki kodlama şeması den için ve dan için kesin bir ön eki elde oluşur mümkün böylece hem yapılı bir ön eki, böylece her iki açık kodlar, ve ayrıca, 58 sembolünün ikili olarak kodlanması.Σ2=dotdashsepC32Σ3Σ2C21Σ2Σ1

Bu nedenle Morse kodu alfabe ifade edilen bir ön ek üçlü kod oluşmaktadır , , kendileri, ikili olarak kodlanmış bu üç sembol ile, aşağıdaki kod sözcükleri ile:{ dotdashsep }

dot 10 , vedash 1110sep 00

Ne ardışık arasındaki boşluk olarak bilinmektedir ki Not dotveya dashfiilen temsil dahildir dotve dashbu genellikle kaynak sembolleri hedef sembollerle ifade kod kelimeler dize homomorfizmalar olarak tanımlanan kodlarının böyle türleri için olağan matematiksel temsilidir olarak, az önce yaptığım gibi.

Bu, standartta verilen sunumun bir bölümünden biraz daha ayrılmakta olup, yapısal özellikler için analiz etmekten ziyade, kullanıcılar için sezgisel olarak kodu belirlemeyi amaçlamaktadır. Ancak kodlama her iki durumda da aynıdır.

Standardın kesin zamanlamaları olmasa bile, analog sinyalin kod çözücüsü, yine de, üçlü kodun yukarıdaki anlaşılmasının hala geçerli olması için önerdiğimiz üçlü alfabeye çevrilebilir.

Kodlar: temel noktalar

Bu cevap, Ekim 2009 tarihli Standart ITU-R M.1677-1'e dayanmaktadır (referans için Jason C'ye teşekkürler). Ben terminolojiyi kullanmak zorundadır dotve dashyerine ditve dahbu standarda tarafından kullanılan terminoloji olduğu gibi.

Mors kodunu tartışmaya başlamadan önce, bir kodun ne olduğuna karar vermemiz gerekir. Bu konuda zor tartışmalar açıkça onu gerektirir.

Temel olarak, iletilmek veya başka bir şekilde işlenmek için bilgilerin temsil edilmesi gerekir. Kod, bir temsil sisteminden diğerine bilgi çeviren bir sistemdir . Bu çok genel bir tanımdır. Bir temsil kavramını ve bir kodun bir temsilinden ( kaynak ) diğerine ( hedef ) olan kavramını karıştırmamaya özen göstermeliyiz .

Bir gösterim değişken elektrik voltajı, kağıt üzerindeki renkli noktalar, karakter dizileri, sayılar, 0 ve 1'lerin ikili dizileri, vb. Gibi birçok şekilde olabilir. Analog ve biçimsel (veya mantıksal veya soyut) gösterimi ayırt etmek önemlidir. .

Analog / fiziksel temsil bir çizim, değişen bir voltaj seviyesi, bir şekil (bir harf için).

Mantıksal / biçimsel / soyut temsil, soyut grafiklerle, sembol dizgileriyle veya diğer matematiksel varlıklarla matematiksel bir temsildir.

Her ne kadar bazı bilgiler başlangıçta analog olsa da, işlemesini kesin olarak matematiksel yollarla veya insanlar tarafından tanımlayabilmek için genellikle mantıklı bir gösterime dönüştürüyoruz.

Tersine, bilgisayar veya vericiler gibi fiziksel aygıtları kullanarak mantıksal gösterimle uğraşıyoruz, mantıksal gösterime analog bir form vermemiz gerekiyor.

Bu analiz için, dikkate aldığımız tek analog biçim, standartta tanımlandığı gibi iletim için kullanılandır. Fakat o zaman bile, ilk adımın, bu analog gösterimi, ne tür bir kod Mors kodu olabileceğine dair analizimizi üzerine inşa ettiğimiz, aynı şekilde yapılandırılmış bir mantıksal gösterimin doğrudan bir uygulaması olarak yorumlamak olduğunu düşüneceğiz. Kod teorisi, mantıksal temsillerin analizine dayanan matematiksel bir bilgi kütlesidir.

Ancak sonunda tartışmadaki analog / mantıksal geçişe geri döneceğiz.

Kodlar: tanımlar

Mantıksal görüşümüz, kodun kaynak alfabesindeki kaynak dizgilerini hedef alfabeye . Amaç her iki alfabenin de aynı, genellikle ikilidir; amaç, bilgi sunumuna hatalara karşı daha dirençli hale getirmek (hata saptama ve düzeltme) veya gösterimi daha küçük hale getirmek gibi bazı ek özellikler eklemek olduğunda fazlalığın kaldırılması (kayıpsız kod sıkıştırma) ve muhtemelen bazı bilgilerin dikkatlice kontrol edilmesiyle (kayıplı sıkıştırma).ST

Bununla birlikte, Mors kodunun amacı sadece büyük bir alfabe üzerinde dizeleri temsil etmek için bir yol sağlamak, daha küçük bir alfabe (aslında ikili) temelli diziler olarak, insana daha iyi adapte olmak için neredeyse ikili olan bir ara alfabe kullanarak algı ve manipülatif yetenekler. Buna değişken uzunluk kodu denilen şeyle ulaşılır :

Biçimsel dil teorisindeki terimleri kullanarak, kesin matematiksel tanım şu şekildedir: ve sırasıyla kaynak ve hedef alfabe olarak adlandırılan iki sonlu küme olsun. Bir kod her sembol haritalama toplam fonksiyonu olan üzerinde bir semboller dizisi ve uzatılmasını bir homomorfizmasının için içine , doğal olarak her sekansı haritalar Hedef semboller dizisine kaynak sembolleri, uzantı olarak adlandırılır.STC:STSTCST

Biz çağrı şifre! Görüntü sembolü ait .C(s)TsS

Değişken uzunluklu bir kodu , 'nın ye karşılık gelen homomorfizmi enjekte ise , benzersiz bir şekilde kodlanabilir . Bu, daki herhangi bir dizginin, daki en fazla bir dizgenin resmi olabileceği anlamına gelir . Ayrıca, kodun belirgin olmadığını söyleriz , yani herhangi bir dizginin kesin bir şekilde kodunun çözülebileceği anlamına gelir.CSTTS

Değişken uzunluklu bir kod, hiçbir kod sözcüğü başka bir önek değilse , bir önek kodudur . Aynı zamanda anlık kod veya bağlamsız koddur . Bu isimlerin nedeni bir kod sözcüğü ile başlayan bir hedef dize okurken yani, bir önek kodu bir sonraki sembol okuma / bilmek zorunda kalmadan, onun son sembolü okurken, yakında olarak şifrenin sonunu tanır. Sonuç olarak, önek kodları açıktır ve hızlı bir şekilde çözülmesi çok kolaydır.w

Benzersiz kod çözülebilirliğin ve önek özelliğinin kodların bileşimi altında kapatıldığı kolayca gösterilir.

Bir homomorfizm olarak tanımlamanın, kod çözücüler arasında özel bir ayrım olmadığı anlamına geldiğine dikkat edin. Prefix özelliği gibi yapıları açık bir şekilde tanımlanmasını sağlar.

Gerçekten, eğer böyle bir ayırma sembolü olsaydı, hedef alfabenin bir parçası olmak zorunda kalacaklardı, çünkü dizgiyi hedef alfabeden çözmek için gerekli olacaktı. Sonra ayırıcıyı önceki kod kelimesine ekleyerek değişken uzunluklu kodun teorik modeline geri dönmek oldukça basit olacaktır. Eğer içeriksel zorluklar artacaksa (örneğin çoklu ayırıcılar nedeniyle), bu yalnızca kodun görünürden daha karmaşık olduğuna dair bir ipucu olurdu. Bu yukarıda açıklanan teorik modele bağlı kalmak için iyi bir nedendir.

Mors kodu

Mors kodu standartta üç seviyede tanımlanmıştır:

  • 3. 57 karakter (27 harf, 10 hane, 20 eş anlamlı ve noktalama işareti) ve karakter dizesini kelimelerin içine kesmek için sözcükler arası bir boşluk kullanarak bir doğal dil metni kodlaması sağlaması amaçlanmıştır. Sözler arası boşluk, dikkat etmeliyim ki diğerleri ile karıştırılabilecek özel bir karakter gibi kullanılıyor SEP.

  • 2. bu karakterlerin hepsinin istiflenmelerin olarak kodlanmış edilecek dash ve dotben not eder arası bir mektup alanı kullanarak sepayırmak için, dashve dotbir sonraki harfin olanlardan biri mektubun.

  • 1. dashVe dot, aynı zamanda sep, tam bir kabul edilen birim olarak tanımlanan uzunluğu ile sinyal veya sinyal (denilen aralık) yokluğu olarak kodlanacak olan bulunmaktadır. Özellikle, bir mektubu kodlayan dashve dotkodlayan, not edeceğim bir elemanlar arası boşlukla ayrılmalıdır σ.

Bu zaten birkaç sonuç için çağrıda bulunuyor.

Analog biçimde iletilecek ve alınacak mesaj , Ek 1, Kısım I, Kısım 1'de belirtildiği gibi her birimin tüm süresi için bir sinyal açık olacak şekilde uzunluk birimlerinin (alan uzunluğu veya zaman uzunluğu) art arda olanlarıdır. Standardın 2'si :

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.

Bu açıkça , analog olarak kapalı ve açık duran ikili bir gösterimde bir 0ans dizisi ile mantıksal olarak gösterilebilen bir bit akışı olarak bilinen bir analog kodlamadır .1

Analog gösterimle ilgili sorunları ortadan kaldırmak için, Mors kodu iletilerinin 0ve ile belirteceğimiz bit dizeleri olarak iletildiğini düşünebiliriz 1.

Dolayısıyla, standarttan yukarıdaki alıntı, mantıksal olarak şu şekilde ifade edilebilir:

  • 0. A dotile temsil edilir 1.
  • 1. A dashile temsil edilir 111.
  • 2. Bir elemanlar arası boşluk σile temsil edilir 0.
  • 3. Mektuplar arası bir boşluk sepile temsil edilir 000.
  • 4. Bir kelime-içi boşluk SEPile temsil edilir 0000000.

Böylece Morse kodunu bu 5 simgeyi kodlamak için ikili kodda 5 kod kelimesi kullanarak görebiliyorduk. Sistemin nasıl tarif edildiğinin böyle olmadığı gerçeği dışında, dahası da var ve saf veya matematiksel bir bakış açısıyla düşünülebilecek en uygun yol değil.

Ayrıca, bu tanımlamanın kod teorisi uzmanları için değil meslekten olmayanlar için tasarlandığını unutmayın. Bu nedenle, onu haklı kılan iç yapıdan daha görünür bir görüntü tanımlamaktadır. Kodun özelliklerini vurgulamak için matematiksel olarak daha yapılandırılmış olsa da, bununla uyumlu diğer açıklamaları engellemek için hiçbir neden yoktur.

Ancak önce, kodun tam tanımının derhal tanınabilir 3 temsil seviyesini içerdiğini not etmeliyiz:

  • 3. Metin de dahil olmak üzere bir karakter dizisinden oluşur SEP.
  • 2. Bir dize olarak yazmak dize kodlayan dot, dashve sep.
  • 1. Bu üçün seviye 2 dizgisinin symbolsikili dizge olarak kodlanması .

Biz muhtemelen ne kodlanmış ne sembollere olarak tartışabiliriz, ama üstündeki karakterler ile, bu temsilin bu üç düzeyi vardır Bu mors kodu temel yönlerinden biri, dots ve dashortada es ve bitlerin 0ve 1altta .

Bu, mutlaka seviye 3'ten seviye 2'ye, diğeri seviye 2'den seviye 1'e kadar iki kod bulunduğunu gösterir.

Üç temsil seviyesini analiz etmek

Bu 3 katlı kodlama sisteminin tutarlı bir analizini yapabilmek için, öncelikle her seviyede ne tür bir bilginin uygun olduğunu analiz etmeliyiz.

  • 1. Bit dizgisi, tanımı ve analog gösteriminin gerekliliği gereği, yalnızca 0ve 1.

  • 3. Metin düzeyinde, 57 karakter ve kelime içi boşluk dahil 58 sembolden oluşan bir alfabeye ihtiyacımız var SEP. Bunların 58'inde nihayetinde bir ikili kodlamanın olması gerekir. Ancak, Mors kodu standardı bu 57 + 1 karakterleri belirlese de, bilgileri kodlamak için nasıl kullanılması gerektiğini belirtmez. İngilizcenin ve diğer doğal dillerin rolü budur. Mors kodu diğer sisteme 58 sembolden oluşan bir 58 alfabelik alfabetik kod sağlar, ancak Mors kodunda bir 58 kod bulunur.

  • 2. At dotve dashdüzeyi, hepimiz ihtiyacı sırayla koduna 57 karakter bu iki sembol olduğunu yani bir dize olarak her biri için bir şifre sağlamak dotve dashbirlikte biraz ayırıcı ile, sepbir harf bitmiş işaretine ve başka bir başlangıç. Ayrıca sözcükler arası boşluğu kodlamak için bazı araçlara ihtiyacımız var SEP. Doğrudan arama 1'de bunu sağlamaya çalışabiliriz, ancak bu kodun başka bir şekilde yapılandırılmamış düzenini bozar.

Aslında, standardın açıklaması haklı olarak bunu yapmak için eleştirilebilir. Ancak yazarlar, sunumlarının ortalama bir kullanıcı için daha kolay anlaşılabileceğini düşünmüş olabilir. Ayrıca, bu tür bir matematiksel analizin yapılmasından önceki bir Mors kodu tanımını izler.

Bu birkaç açıklama gerektirir:

  • Seviye 3, harf düzeyinde, harf arası boşluk separtık anlamlı değildir. Bu oldukça normaldir, çünkü harflerin evreninde iki yazılı karakteri kağıt üzerinde ayıran alandan daha fazla bir anlamı yoktur. Harfleri temsil eden kod sözcüğü tanıması 2. seviyede gereklidir, ancak hepsi bu kadar.

  • Benzer şekilde, seviye 2'de, elemanlar arası boşluk σartık anlamlı değildir. Bu dünyasında hiçbir anlamı yoktur dotve dashfakat temsil ikili kod kelimeleri tespit etmek 1. düzeyde gereklidir dot, dash. Ancak 1. seviyede, bitten ayırt edilemez 0.

Bu yüzden elemanlar arası boşluk σartık özel bir şey değil. Bu sadece bir kullanımdır 0.

Ancak, daha önce açıklandığı gibi, eğer kodu değişken uzunluklu kodlar bilgisi kullanılarak analiz edilecekse, kodları basit bir dizge olarak tanımlayabilmek için, takip eden kod ayırıcılar eklenmelidir. homomorfizmi.Σ2Σ1

Bu, kodun aşağıdaki kısmi belirtimini belirtir: vedot10dash1110

Seviye 2 alfabesi , standardın harfine göre olması gereken harf arası boşluğunun belirtildiği en az bir diğer sembole ihtiyaç duyar . Bununla birlikte, bir homomorfizmasının olarak değişken uzunluk kodu tanımı elemanlar arası boşluk ekleme gerekli her kod kelimesi ile ve . Bu nedenle, sadece önceki kodun sonu ile birlikte olmak için , ya da standardın gerektirdiği şekilde 3 yapan, için bir kod sözcüğü olmalıyız . Bu her zaman işe yarar, çünkü standartta birbirini takip eden iki harf arası ayırıcıya ilişkin bir hüküm yoktur.Σ2sep0000dotdash00sep0dotdash0

Bu kodlamak yeterlidir alfabe { , , } yapılı bir kod ile aşağıdaki gibi tanımlanır:Σ2=dotdashsepC21:Σ2Σ1

  • dot10

  • dash1110

  • sep00

Ve hiçbir şifrenizin bir başkasının öneki olmadığını keşfetmek için iyi bir sürprizimiz var. Bu nedenle, açık ve çözülmesi kolay olan bir önek koduna sahibiz.

Şimdi kodunu tanımlamak için benzer şekilde devam edebiliriz .C32:Σ3Σ2

Standart kullanımları dizeleri dotve dashkarakter için codewords olarak örneğin standardın tablolar verdiği şekilde, mektup temsil etmek .Σ3dot dot dash dotf

Yine, bu kodlayıcılar harfler arası boşluklarla ayrılır. Kodu bir homomorfizm olarak tanımlamak için, kod sözcüğü içindeki ayırıcıyı dahil etmeliyiz, böylece homomorfizmin tanımı daha doğrusu olur: f dot dot dash dot sep

Bu, alfabesindeki 57 karakterden her biri için geçerlidir . Fakat yine de , standarda göre olan ayırıcı kelimesine de ihtiyacımız var . Öncelikle , kodun, 2 kelimenin son harfini sona erdiren kodun sonunda, 3'ün ise , 1'in de, son harfin kodunun veya sonunun bittiği bit tarafından sağlandığını not ettik . Bu nedenle sonuçta kalan olarak kodlanmalıdır .Σ3SEP00000000sep0dotdashSEP0000

Ancak, kademeli yaklaşıma saygı duymak için SEP, bazı kod sözcüğü kodlanmalıdır . Yana olarak ikili kodlanmış , o izleyin olarak kodlanabilir .Σ2sep00SEPsep sep

Bu yüzden alfabesini kodlayabiliriz, homomorfik bir kod aşağıdaki gibi tanımlanır:Σ3={A,B,,Z,0,1,,9,?,=,,×,@, SEP}C32:Σ3Σ2

  • A dot dash se p'ye

  • B dash do t dot dot sep ...

  • Z dash dash dot dot sep ...

  • 7 dash dash dot dot dot sep ...
  • SEP sep sep (sözcük ayırıcı için)

Ve hiçbir şifrenizin bir başkasının öneki olmadığını görmek için başka bir sürprizimiz var. Bu nedenle, kodu da bir önek kodudur.C32

Önek özelliği kodların bileşimi altında kapalı olduğundan, Mors kodu bir önek kodudur.CMorse=C21C32

Böylelikle, olduğu sonucuna varabiliriz Morse kodu bir önek ikili 3 semboller, alfabeden {ait kodlama bileşim olarak anlaşılmalıdır ve kolayca analiz edilebilir dot, dash, sep(ikili bir alfabeye} ve bir ön ek bir 58 sembol alfabesinin kodlayan 57 karakter ve bir boşluk) 3 harfli alfabe içine.

Kompozisyonun kendisi, 58 sembolün ikili bir gösterime kodlanmasının bir önekidir.

Bu analiz üzerine açıklamalar.

Bir yapının sunumunun, ulaşılabilecek en iyi şey olduğunu belirlemek her zaman zordur. Bununla birlikte, yukarıdaki analiz, bu cevabın başında belirlenen kriterleri karşılamaktadır: şu anki kodlama teorisine göre resmi olarak sunulan 3 aşamalı tanımlamaya yakınlık, basitlik ve kodun ana özelliklerinin kanıtlanması.

Hata düzeltme özelliklerini ararken küçük bir nokta olduğuna dikkat edin. Mors kodu, ikisini dotbirden bire değiştirebileceği için tek bir bit hatası bile algılamayabilir dash. Ancak, yalnızca yerel hatalara neden olur.

Sıkıştırma ile ilgili olarak, üçlü kodlama, yaklaşık bir Huffman kodlaması türünde, nokta ve çizgi sayısını yaklaşık olarak azaltmak için tasarlanmıştır . Ancak oluşan iki kod kolayca daha yoğun yapılabilir.

Alfabenin boyutuyla ilgili olarak, ikili sembol ve 58 sembol alfabesi için bir seçenek yoktur. Ara alfabe daha fazla sembol içerebilir, ancak amaç ne olurdu?

Bununla birlikte, bazı insanlar DET2. seviyedeki boşluğu tanımaya meyilli olurlar , böylece alfabeyi dörtlü yaparlar , sonra doğrudan 2. seviyede kullanırlar, 2. seviyede kendileri olarak kodlanırlar.

Bu DET, ikili olarak kodlanmış için standart tanımı yerine getirecektir 0000. Fakat ikili kodunun bir önek kodu olarak analiz edilmesini önler, bu da in bir önek kodu olduğunu göstermeyi zorlaştırır , bu nedenle belirsizdir.C21CMorse

Aslında, böyle bir seçim ikili dizgiyi 0000belirsiz, ya SEPda olduğu gibi çözülebilir hale getirecektir sep sep. Belirsizliğin sep, formalizasyonu daha karmaşık hale getiren, kendisini izleyemeyen bağlamsal bir kuralla çözülmesi gerekecektir .

Analogın mantıksal geçişe önemi.

Bu analiz, açma / kapama sinyalinin eşit uzunluktaki birimlere ayrışmasının açıkça bir ikili dizinin analog bir gösterimini gösterdiği gerçeğine dayanır. Ayrıca, birimlerdeki uzunluklar, tesadüfen meydana gelme olasılığı düşük gibi görünen yukarıdaki analiz için tam olarak doğrudur (mümkün olsa da).

Bununla birlikte, 1647 nolu orijinal patente (çok cursory) baktığımızda, (sayfa 2'nin üstünde) gibi cümle ile tam olarak göründüğü görülmemektedir:

Kelimelerin veya sayıların bir cümlesinde kullanıldığında, belirli bir sayının veya bir bileşik sayının işareti, bu gibi herhangi bir ayrımı oluşturan karakterleri ayırmada kullanılan mesafeden daha büyük ölçüde karakterler arasındaki bir mesafe veya boşluktan oluşur. veya bileşik sayısı.

Daha sonra elle gönderen veya kulak yoluyla alan insanların da bu kadar kesin olmaları muhtemel değildi. Gerçekten de, bunların yumruk , bunların zaman, yani, genellikle tanınabilir. Bu görüş , özellikle Mors kodu öğrenirken boşluk uzunluklarının her zaman dikkate alınmadığı gerçeğiyle de desteklenir .

Bu durumlar, kodun kısa sinyal (nokta), orta sinyal (kısa çizgi) ve kısa, orta ve uzun duraklama olarak analog görünümüne karşılık gelir. Mantıksal bir alfabe içine doğrudan geçiş, doğal olarak 58 sembolün kodlanması gereken kısa bir alfabe verecektir . Elbette bu Mors alfabesinin 3 aşamalı bir sunumu değildir.

Bununla birlikte, mantıklı olmak (ve muhtemelen belirsizlikten kaçınmak) için, bu alfabe, iki sinyal sembolünün ( dotveya dash) birbirini takip edemeyeceği ve duraklatma sembollerinin de birbirlerini takip edemeyeceği kısıtlamasıyla kullanılmalıdır . Kodun ve özelliklerinin analizi daha karmaşık hale getirilecek ve basitleştirmenin doğal yolu, yapılanları yapmak olacaktır: onu, iki kodun bileşimine dönüştürmek için uygun zamanlamaları getirerek, yukarıda verilen oldukça basit bir analizin yapılmasına yol açtı ( kodun önek olduğunu gösterdiğini de unutmayın).

Ayrıca, analog gösterimde kesin zamanlamaları takip etmek kesinlikle gerekli değildir. Analog çevirinin kod çözücüsü kısa, orta ve uzun duraklamaları ayırt edebildiğinden, ne olursa olsun, ikili durumda yapılanları taklit etmelidir. Bu nedenle kısa ve (mutlaka bir duraklamayı takiben) ortamı sinyali mantıksal olarak kabul edilmektedir dotya da dash. Kısa duraklamalar, sadece dotveya sonunu işaretlemeye yarayan unutulur dash. Orta duraklamalar sepve uzun duraklamalar separt arda iki olarak kabul edilir . Bu nedenle analog sinyal, 58 sembol alfabesini kodlamak için daha önce olduğu gibi kullanılabilecek bir üçlü alfabeyle temsil edilir. İlk analizimiz zamanlamalara kesinlikle uyulmadığında bile kullanılabilir.

Alternatif olarak, sinyal duraklatma alternatifi, bu kısa alfabeyi üçlü bir alfabeye dönüştürmek, sadece üç süreyi alfabenin sembolleri olarak tutmak ve belirli bir sürenin sinyal veya duraklama olup olmadığını belirlemek için bağlamsal analiz kullanarak kullanılabilir. Fakat bu, analiz edilmesi gereken biraz daha karmaşık.

Bu sadece şeylere bakmanın birçok yolu olduğunu gösterir, ancak bunların elverişli olmaları gerekmez ve kodları analiz etmek için geliştirilen matematiksel araçlarla analiz için kendilerini kolayca ödünç vermeyebilirler.

Patentlere daha fazla referans internette bulunabilir.

Sonuç

Standardın kesin zamanlamaları göz önüne alındığında, iyi bir cevap, Mors kodunu, bu üç sembolün ikili bir ön kodundan oluşan 3 sembollü bir alfabe halinde kodlayan üçlü bir önek (58 karakterden oluşan) bileşimi olarak düşünmek gibi görünüyor.

Standardın kesin zamanlaması olmadan, ikili seviye artık dikkate alınamaz. Daha sonra mantık kod çözme analog, doğal olarak, ara alfabe seviyesinde gerçekleşir dotve dash. Bununla birlikte, analog-mantık kod çözücünün önceki 3 sembol alfabesinin kodunu çözebilir, böylece analizimizin uygulanabilirliğini koruyabiliriz.



1
Yorumlar uzun tartışmalar için değildir; bu konuşma sohbete taşındı .
Raphael

Soru: Üçlü argümanda {0,1} alfabesiyle başlarsınız, bundan sonra dört sembol, {dot = 10, dash = 1110, sep1 = 00, sep2 = 000000}, bundan sonra bir üçlü kod kelimesi oluşturursunuz sep2 = sep1 sep1 sep1 ' e izin vererek . Kod sözcüğü seçildi, çünkü sembolleri kodlamaya uygun bir şekilde bağlıyordu ve OP ikili depolamayı soruyordu. Ancak, neden {rest = 0, on = 1} set kod kelimesini kullanıp "dot = on" deyin, "dash = on on", sep0 = "off", sep1 = "off off" deyin. , sep2 = "kapalı kapalı kapalı kapalı kapalı kapalı" (sep0 ara sıra istirahati nerede)?
Jason C

^ Bu durumda, argüman bir üçlü kod kelimesine ayarlanmış, ancak burada verilen üçlü ifadeyle benzer ve aynı derecede güçlü bir argüman kullanan bir ikili kod sözcüğü içindir. Olduğunu, seçim üst üste birden ayırıcılar için özel bir anlamı vermek bunlarla değil bir şey başka bir satırda üçlü tartışmaya esastır birden için özel bir anlamı vermek değil, aynı zamanda keyfi görünmektedir.
Jason C


28

Bu cevap göründüğü sürece değildir; bu site sadece liste öğeleri arasında çok fazla boşluk bırakıyor! Güncelleme: Aslında çok uzun sürüyor ...

Mors Code, "resmen" ikili, üçlü, dörtlü, quiner ve hatta 57 ary değildir (doğru sayılırsam). Hangisinin bağlamsız olduğunu tartışmak üretken değildir. O kadar olduğu size o olduğu beşinizden hangi tanımlamak için uygulamanıza ve spesifik durum için kodlama gereksinimlerine göre . Bu amaçla, karar vermeden önce durumunuz için göz önünde bulundurmanız gereken her sembol set büyüklüğünün artıları ve eksileri vardır.

Temel olarak, uluslararası Mors Kodu standardı M.1677 , bölüm 2, zamanlamaları şu şekilde tanımlamaktadır:

2 Sinyallerin aralığı ve uzunluğu
2.1 Bir çizgi üç noktaya eşittir.
2.2 Aynı harfi oluşturan sinyaller arasındaki boşluk bir noktaya eşittir.
2.3 İki harf arasındaki boşluk üç noktaya eşittir.
2.4 İki kelime arasındaki boşluk yedi noktaya eşittir.

Bunun yalnızca zamanlamaları tanımladığını unutmayın; örneğin bir tire, üç noktayla aynı şey anlamına gelmez, sadece aynı uzunluktur. Temel zaman birimi noktadır.


İkili

İstersek ikilik seçebiliriz. Mors Kodu'nu “katı ikili” ile temsil etmek mümkündür, sizin dediğiniz gibi - bu yazarın yaklaşımı rakamları “nokta” ve “çizgi” ye atamaktı. Bu yaklaşım işe yaramıyor ve yazarın Mors kodunu sağlam bir şekilde kavradığını sanmıyorum. Fakat işe yarayan farklı bir yaklaşım var. Eğer ikiliyi seçersek, esas olarak her bir sembolün bir tek nokta-uzamış zaman dilimini kaplamasıyla sinyalin yüksek mi düşük mü olduğunu temsil ederiz. Bunun ayrıca belirttiğiniz İkili Kodların Listesi sayfasında açıklanan yaklaşım olduğunu unutmayın.

Diğer ikili kodlamalar da işitilebilir Mors Koduna geri dönme zorluğunun artması pahasına (örneğin Bob Jarvis'in cevabı ) olarak seçilebilir (Bob'un kodlaması vatansızca çözülemez, örneğin tradeoff daha kısa kodlanmış dizileri sağlar).

Semboller:

  • Düşük, kapalı vb. (0)
  • Yüksek, açık vb. (1)

Kodlama Örnekleri:

  • Sinyal ayırıcı: 0
  • Mektup ayırıcı: 000
  • Kelime ayırıcı: 0000000
  • Üç nokta: 10101
  • Üç çizgi: 11101110111
  • "Oğul" kelimesi: 101010001110111011100011101
  • İfade "bir" dir: 10100010101000000010111

Artıları:

  • Minimum simge seti boyutu
  • Tipik dijital mantık ile kolayca yönetilebilir
  • Sesli Mors Koduna kod çözülmesi kolaydır (doğrulama yapılmazsa varsayılır); durumsuz kod çözme ve sembollerin zamanlamasıyla ilgili bilgilerin depolanmasını gerektirmez (her sembol aynı uzunluktadır).

Eksileri:

  • Uzun kodlamalar.
  • Geçersiz kodlamalar için birçok fırsat.
  • Bireysel sembol anlamları (0, 1) bağlama göre değişir.


Üçlü

Bu seçenekle, harf ve sözcük boşluklarını dinlenme olarak tanımlarız ve sinyal boşlukları örtüktür (yine de size daha uygunsa sinyaller arasında nokta uzunluğu dinlenme sembolleri gerektirmeyi seçebilseniz de).

Semboller:

  • Nokta boyu dinlenme (0)
  • Nokta (1)
  • Çizgi (2)

Kodlama Örnekleri:

  • Mektup ayırıcı: 000
  • Kelime ayırıcı: 0000000
  • Üç nokta: 111
  • Üç çizgi: 222
  • "Oğul" kelimesi: 11100022200021
  • "Bir" ifadesidir: 11000111000000012

Artıları:

  • Küçük sembolün boyutu
  • Sinyal ayırıcı artık gerekli değil.
  • İkili kodlardan daha kısa kodlama uzunlukları.
  • Bazı geçersiz kodlamaları kaldırır (örneğin, ikili seçim artık 0110'da mümkün değildir).

Eksileri:

  • Hala uzun kodlamalar.
  • Özellikle geçersiz kodlamalar için hala birçok olasılık, gerisi.
  • Açık nokta uzunluğu yerleştirmeyi tercih etmediğiniz sürece, vatansız olarak çözülemez .
  • Sinyal ayırıcıları örtülü olan Eğer sinyaller arasındaki açık nokta uzunluğu dayanakları koymayı tercih sürece.
  • Bazı bireysel sembol anlamları (0) bağlama göre değişir.


Dörtlü

Semboller:

  • Mektup ayırıcı (0)
  • Kelime ayırıcı (1)
  • Nokta (2)
  • Çizgi (3)

Kodlama Örnekleri:

  • Üç nokta: 222
  • Üç çizgi: 333
  • "Oğul" kelimesi: 2220333032
  • Cümle "bir" dir: 220222123

Artıları:

  • Çok kısa kodlanmış uzunluk.
  • Geçersiz kodlama olasılığı azalır.
  • Semboller anlamsal olarak doğrudur.
  • Muhtemelen, daha fazla insan tarafından okunabilir.

Eksileri:

  • Büyük sembolün boyutu
  • Vatansız olarak çözülemez.
  • Sinyal ayırıcılar örtülüdür.


Beşli

Wikipedia listesinin doğrudan yorumlanması. Bunun, ikili 0'lara veya 1'lerin çeşitli geçerli kombinasyonlarına kendi sembollerinin verilmesi dışında, ikili seçeneğe çok benzer olduğunu unutmayın.

Semboller:

  • Sinyal ayırıcı (0)
  • Mektup ayırıcı (1)
  • Kelime ayırıcı (2)
  • Nokta (3)
  • Çizgi (4)

Kodlama örnekleri:

  • Üç nokta: 30303
  • Üç çizgi: 40404
  • "Oğul" kelimesi: 303031404041403
  • "Bir" ifadedir: 3031303032304

Artıları (kuaterner ile karşılaştırıldığında):

  • Vatansız olarak çözülebilir.
  • Belirgin, doğrudan ve net bir şekilde standardın 2. bölümünde belirtilen beş nesneyi temsil eden tek sembol kümesi boyutu: "nokta" (tüm zamanlamaların göreceli olduğu), "kısa çizgi", "sinyaller arasındaki boşluk", "arasındaki boşluk iki harf "," iki sözcük arasındaki boşluk ".

Eksileri (dördüncül ile karşılaştırıldığında):

  • Geçersiz kodlamalar için daha yüksek olasılık.
  • Ek bilgi eklemeden artan kodlama uzunlukları (tradeoff kod çözme kolaylığı).
  • Değil olarak her simge zaman içinde farklı uzunluk ve bu ilişkinin bir yere korunması gerektiğini söyledi ikili seçenek olarak decode kolay.


57-li:

Bütünlüğü için dahil edilmiştir.

Semboller:

  • 26 harf
  • 10 numara
  • 20 noktalama işareti ve çeşitli işaretler
  • Kelime ayırıcı (boşluk)

Kodlama Örnekleri:

  • "Oğul" kelimesi: son
  • "Bir" ifadesidir: is a

Artıları:

  • En kısa kodlama
  • İnsan okunabilir
  • Geçersiz kodlamalar mümkün değil.

Eksileri:

  • En büyük sembol seti
  • Mors Koduna kod çözmek zor; Her sembol için Mors Kodu çıktı dizilerinin tablolarını korumak için gerekli ve çeşitli sınırların nereye ekleneceğini belirlemek için sözcük sınırlarını ve bitişik harfleri tespit etmek için gereklidir.
  • Yeni semboller eklemeden Mors Kodu spesifikasyonunun ötesine geçmek imkansızdır (geçersiz kodlamalara karşı bağışıklık kazanma).
  • Sinyal ve harf ayırıcılar örtülüdür.

Sonlandırma

Bir cihazda bir sembol akışı olarak depolanması için, eğer bunu yapmak gerekir, bu M.1677 tanımlar mesajı ve iletim sonlandırma dizileri fazlalaştı. II. Bölümden:

5 Her telgraf bir çapraz sinyalle (. -. -.) Sonlandırılmalıdır .
6 İletimin sonu çapraz sinyal (. -. -.) Ve ardından K (-. -) sinyalini iletme daveti ile belirtilmelidir .
7 İşin sonu, son telgrafı ileten istasyon tarafından belirtilir. Doğru gösterge, çalışma sinyalinin sona ermesidir (.. -. -)

Maalesef, standart, örneğin "+ K" dizisini diziden ayırma yeteneği üzerinde sessizdir ( telgraf sonu , iletime davet ). Ancak, iş sonu eşsizdir. Mors kodunu saklıyorsanız, kaydedilmiş bir dizinin sonunu nasıl belirtmek istediğinizi seçmek için bir seçim yapmanız gerekecektir.

Örneğin, bir konuşmanın tamamını saklıyorsanız ve ikili sembol setini kullanıyorsanız, bitimini 101010111010111 benzersiz bit dizisi olarak gösterilen dizilim göstergesinin sonu olarak düşünebilirsiniz. kaydettiğiniz verilerin (örneğin, mesaj parçaları, tüm mesajlar, tüm konuşmalar gibi) yanı sıra karar vermeden önce depolama ortamınız (size mesaj uzunluğu ile ön ekleyebilme yeteneği) tarafından sunulan imkanlar. Sanırım kendi sıralama göstergesini sonlandıracak kadar ileri gidebilirsin. Her durumda, bunlar tüm altta yatan depolama meseleleridir ve burada listelenmek için çok fazla olanaklara sahiptir. Seçim, durumunuz için neyin uygun olduğuna bağlı olarak gerçekten size kalmış.


Vatansız olarak kodu çözülemez: Bu kodlamalar, sesli Mors Koduna kod çözmek için bir durumun korunmasını gerektirir. Hepsi "Eğer önceki sembol bir nokta / çizgi ise ve mevcut sembol bir nokta / çizgi ise, o zaman sinyal ayırıcıyı yerleştir" i gerektirir. Kelime ayırıcıyı 5 dinlere düşürürken ve harf ayırıcıyı 1'e indirirken, "hile yapmayı" ve hile yapmayı ve otomatik olarak tüm sembollere bir sinyal ayırıcı ekleyebilseniz de, M.1677, bu kirliliği kıran ardışık sözcük ayırıcıları açıkça yasaklamaz.

Separa Sinyal ayırıcılar örtülüdür: Bu doğrudan yukarıdaki nota ilişkindir ancak daha anlamlıdır. Bu kodlamalar, gösterimlerinde örtük sinyal ayırıcılara sahiptir. Bu, "zzz" sezgisel olarak üç ayrı z'dir, sınırlar, kodlamanın kendisindeki sembolleri ayıran her ne ise "sırtına" yüklenir. "Arka arkaya üç nokta" açıklamasını göz önünde bulundurun; sezgisel olarak bunu üç ayrı demek istiyoruznoktalar, ancak ayırıcılar ima edilmediyse, bu bir çizgiden ayırt edilemez olabilir. Yalnızca Vikipedi tarzı ikili ve quiner (veya açık sinyal ayırıcı seçeneğine sahip üçlü) gösterimler, duruma bağlı olarak büyük değeri olabilecek tüm belirsizliği ve "kısayolları" kaldırır. Bu nedenle, kısa seçim için güçlü bir argüman var.


TL; DR:

Gördüğünüz gibi, her birinin avantaj ve dezavantajları var ve gereksinimlerinize göre nasıl tedavi etmek istediğinize karar vermek size kalmış . Doğru cevap yok. Genel olarak birinin diğerinden daha uygun olduğunu iddia etmeye çalışabilirsiniz, ancak bu argümanlar, bağlamsız olduğu gibi, doğru bir cevap olmadığı için, bilgiçlikçi tercihlere indirgeyecektir.

Şimdi, tüm söylenenler, benim görüşüme göre, en çok tercih edilen seçim, Mors Kodu için kendime en “doğru” olan temsilidir. Aşağıdakilerin tümünü sağlayan tek seçenek budur:

  • Bağlamsız semboller (kendi başlarına bir sembol, bitişik semboller incelenmeden anlamı ile ilgili tüm bilgileri içerir).
  • M.1667'de tanımlanan tüm ilkellerin temsili.
  • Ayırıcılar (sinyal, harf, kelime) gösterimde veya altta yatan kodlama ile ima edilmezler (bu, eğer yazdıysam { dot, dot, dash }, bunların ,dikkate alınması ve gözden kaçırılması kolaydır) önemlidir.

Ancak, herkes için güçlü argümanlar var. Kodlama ile ilgili argümanlar, Mors'un kendisinin tedavisi için de geçerlidir. % 100 somut bir cevap yok, ancak arkadaşlarınızla barda tartışmak için kesinlikle iyi bir konu olabilir.

. . . -. -



1
Yorumlar uzun tartışmalar için değildir; bu konuşma sohbete taşındı .
Raphael

Argümanlarınızdaki vatansız kod çözmeye değiniyorsunuz. Kodlama teorisinde, durumlar, nadiren, hata düzeltme kodları ailesi olan evrişimli kodlarda kullanılıyor gibi görünmektedir. Mors kodu, hata düzeltmeden başka bir şey olduğu için bu tamamen konu dışıdır. Aslında, bazı bit hatalarını bile algılayamıyor, düzeltmelerine bile izin veriyor. Mors kodunun bir sürümü olarak çeşitli rasgele kodlar kullanırsınız, ancak hiçbir anlam ifade etmezler. Neden onları tanıtıyorsun? Durum gerektirmeyen, yani homomorfik kodlama asgari bir gereklilik gibi görünmektedir. Ve ilginç kodlamaları özlüyorsun. cc @KorayTugay
babou

@babou Statless kod çözme argümanları?
Koray Tugay

@babou Birkaç konu dışı puan almamın bir sakıncası yok. Tabii ki sembol setleri keyfidir; İşte tam olarak bu cevabı verdiğim nokta. İkili önek kod argümanının üstüne ayarlanan üçlü kelime aynı derecede keyfidir. İlk bakışta hayır, fakat temel olarak, argümanı iki harfli bir alfabe (0 ve 1) ile ayarlanmış bir kod kelimesine dayandırmak için keyfi bir seçim yaptınız. Bu isteğe bağlı bir seçenektir, çünkü "ayrı ayrı" özel anlam verme ama bunu "ünite 1" e yapma seçeneği keyfidir. "Dash" in "dot dot dot" olduğunu kolayca söyleyebilir ve üçlü üzerinde tartışabilirsin.
Jason C

5

Bu konudaki ilk düşüncelerime rağmen, bu sorunun oldukça kesin bir cevap kabul edecek şekilde resmileştirilebileceği ortaya çıkıyor (birkaç tanım sorunu modulo). Cevap 3 veya 4, yani üçlü veya dörtlü olduğu ortaya çıkıyor. Kalabalık zevkli “her şey 2'den 57'ye gidiyor” yanıtı, yalnızca birileri sizden abelian gruplarının karakterizasyonunu isterse, onların set olduğunu söylerseniz doğrudur.

Mors kodu için fiziksel kodlamaya bakarak başlayalım. Bu aslında B ASK , yani mesajımızı kodlamamız için iki fiziksel (elektrik / optik vb.) Genlik seviyesi olduğunu söylemenin çok ayrıntılı bir yolu olan ikili genlik kaydırma anahtarlaması. Yani, asıl soru şudur: bu, cevabın Mors kodunun ikili olduğu anlamına gelmez mi? Eh, sadece oldukça bilgilendirici olmayan bir şekilde, kablo üzerinden gönderilen ikili açma / kapama sinyalinin doğrudan çizgi veya noktalara karşılık gelmediği anlamında ikilidir . Bu belirsiz yazışma düzeyinde bile, ASCII kodunu (doğrudan, açık bit kodlamasıyla) gönderebilir ve "Mors" ve / veya "ikili"; Aynısı herhangi bir Huffman kodu için de geçerlidir (ASCII yerine).

Peki yazışmaları nasıl daha kesin hale getirebilir ve aynı zamanda sorumuzu resmileştirebiliriz? Kodlama teorisi yardım etmeye geliyor. Let "morsable" semboller, eğer doğru Morse kodu evreni anlamak kabaca 66 sembollerin kümesi olmak; Bu, 26 Latin harfini, 0-9 rakamını ve bazı noktalama işaretleri, "kazananlar" vb. gibi bir demet yardımcıları içerir. Aslında bunların ne olduğu çok önemli değil. Bir kod bir eşleştirme eşleştirmesidir, burada ( değil ) bir kod sözcüğüdür. Temel BASK donanımımızda fiziksel olarak gösterilebilir olmak için, olmasını isteriz, yani kod sözcüğümüzün bir bit dizisi olması gerekir; Bu gerektirirMc:MTTTT{0,1}c'ın değerleri bir kod dizisidir, yani bit dizeleridir, fakat sonuçta sadece bit dizeleri olarak doğrusallaştırılır.

Mors alfabesi sadık bir karakterizasyonu olmak için, gerek kağıt üzerinde Mors kodu temsil eden bu kod sözcükleri ve noktalar ve çizgiler arasında bir bijection olması gerektiğini anlamda, çizgiler ve noktalarla bazı doğrudan eşdeğer içermesi. , aynı zamanda, bir elemanın bir faktoring, yani [neredeyse] benzersiz çözülebilir kodu olması için gerekli olan elemanları açısından / kod kelimeler ile [ideal] benzersiz olması gerekir. (Bazı yazarların, örneğin Berstel’in , benzersiz bir şekilde deşifre edilebilir olmadıkça kodunu bile çağırmadıklarını , ancak diğerlerinin, örneğin Steve Roman’ı hatırladığını unutmayın.TTTTTherhangi bir eşlemenin bir kod olduğu farklı bir terminolojiye sahip olmakla birlikte, benzersiz bir şekilde deşifre edilebilir olanlar sadece söylenenler ve kısaltılmış UD kodlarıdır. Burada sadece son terminolojiyi yapacağım. Ayrıca biraz sonra neden "ideal olarak" dediğimi göreceksiniz.)

Yana sadece bir enjeksiyon ve bir örten olması gereklidir, biz doldurabilirsiniz bu hurdaları tarafından oluşturulan dizeleri şey morsable ait öngörüntü değildir sürece, bir UD kodu almak için ne yapılması gerektiği ötesinde keyfi "önemsiz" ile. Örneğin, tam olarak 42 noktadan oluşan bir dize, gördüğüm Mors kodu değişkenlerinin hiçbirinde bulunmuyor. Öyleyse, Mors kodu ikili, üçlü, dördüncül, quiner, quiner vb. Olup olmadığını sorduğumuzda, soru , asgari kardinalliğini yukarıdaki iki özelliğe göre mi sormalıdır , yani: [neredeyse] bir UD kodudur ve bir kâğıt tabanlı "çizgi" ve "nokta" arasında bazı unsurlarına açık bir itiraz .cTTT

Bir UD kodu almak için Mors harflerinin kağıda dayalı, çizgi nokta gösterimi arasında bir ayırıcıya ihtiyacınız olduğunu gözlemleyerek ya da ITU’dan bu yana aşağıdan yukarıya doğru bir ayırıcıya ihtiyaç duyduğunuzu gözlemleyerek oluşturmaya devam etmenin iki yolu vardır. uluslararası Mors kodu bize satırların, noktaların ve çeşitli duraklamaların zamanlarını verir. İkinci yaklaşımı burada kullanacağım çünkü aksi halde almak için sayısız yol var; yani, oldukça isteğe bağlı zaman uzunlukları seçebilirsiniz; örneğin, ITU versiyonundan daha kısa satırlar kullanılan Amerikan Mors kodu kullanılarak değiştirilen Amerikan Mors kodu.TT

Başlayalım, ünite uzunluğu "açık" sinyali (1) ve "kapalı" sinyali (0): just-dot(1), just-line(111), unit-space(0) birim uzunluğundan oluşturulan beş temel kod sözcüğü olan ITU sinyal uzunluğu türetilmiş gösterimi ile başlayalım: , letter-space(000) ve word-space[Uluslararası Mors'ta yedi 0 olduğunu varsaydı, ancak pratikte değişebilir]. Derhal notun ardından sadece 1 ve hemen ardından 1unit-space göründüğünü unutmayın ; ve bu ait -termination ve (virgül kodudur; bu konuyu daha sonra) aslında aksi takdirde daha noktalardan gelen çizgileri dışında anlayamadı gereklidir. Bu, size dört kodediyede belirgin bir azalma sağlar:just-dotjust-line0just-dotjust-line

  • dit= just-dot unit-space= 10 ve
  • dah= just-line unit-space1110.

Bu dörtlü Mors alfabesi Yani: dit, dah, letter-space, word-space. Bir sonraki gözlem, word-spaceiki letter-spacesaniyeye, yani altı sıfır'a yaklaştırabileceği (hatta varsayılabileceği gibi) olmasıdır . Peki nasıl üçlü kod sözcüğü ayarladığınızı; Bu akıl yürütme sırasına referans olarak bakınız örneğin [1] [2] .

Üçlü kod sözcüğü tercih etmenin teknik bir nedeni de var: benzersiz bir şekilde deşifre edilebilir bir kod, aslında bir önek kodu. Ancak (ya da sadece altı sıfır versiyon) artık benzersiz çözülebilir olduğu için , böylece var olmayan bir benzersiz faktörizasyon. Bu teorik olarak bir problem olmakla birlikte, pratik bir endişe kaynağı değildir, çünkü insan "metronom" un çok uzun sessizlikleri ölçmekte zorlanır, bu nedenle temelde belli bir uzunluktan daha uzun herhangi bir sessizliğin (bir insan tarafından) bir çeşit olduğu varsayılır .T={10,1110,000}{10,1110,000,07}010=0307=0703word-space

Ayrıca , o kümeye eklerseniz (yani "quiner" görünümü alın), bile artık benzersiz bir çarpanlaştırmaya sahip olmadığından (kendisi de bir kod kelimesidir) anlamında "daha da yanlış" olur . Ayrıca, bu önemsiz yani, herhangi bir mors sembolün öngörüntü değildir ekleyebilir çok gibi, için ; Aslında, ikincisini eklemek, eklemekten farklı olarak , kodun UD özelliğini kaybetmesine neden olmayacağından daha az zahmetlidir .00000T1420T0

İndirgeme / den soyutlama dit, dah, letter-spaceüç soyut semboller (Trits) ikili kod sözcükleri olarak (üçlü) Morse kodu UD olduğu hızlı bir şekilde gösterilmesi için yararlı olan; bu hemen açıktır çünkü letter-spacevirgül işlevi görür, yani üçlü Mors kodu virgül kodudur. (Not diğer yazarlar virgül dışındaki tüm semboller aynı biridir daha kısıtlayıcı anlamda "virgül kodu" define olduğunu; ben daha geniş anlamda burada kullanıyorum DH Smith'in "Post modern cebir" de verilen , hangi sadece şimdiye kadar kod sözcüğü için benzersiz bir sonlandırma sembolü kullanmak anlamına gelir.) Ayrıca virgül kodunda virgül kodunun iki düzeyde kullanıldığını unutmayın; just-lineve just-dot"kısa virgül" ile sonlandırılır unit-space=0Onları birbirinden ayırt etmek için. O inşaatı iki farklı ( ditve dah) karaktere soyutladığınızda, tüm Mors alfabesi harfleri üçüncü basamağı olan ile sonlandırılarak virgül kodlanır .000

Ayrıca trit yaklaşımını, a dahve ditve letter-space“eşdeğer” olarak kabul edilen entropiyi hesaplamak için, örneğin [e] , örneğin “e” nin 2, “y” nin 5 puan alması anlamında kullanabilirsiniz. Soyut trit yaklaşımı, her bir sembolün bir hatta gerçek BASK Morse kodlamasında aslında ne kadar pahalı olduğunu umursanız çok faydalı değildir. İkincisi için, bir otomatdaki geçişler gibi görülen 3 (veya 4) sembolün gerçek bit uzunluklarına inmeniz gerekir. Örneğin, 'e' harfi (as dit letter-space) kodlamak için 5 bit , 'y' ise 17 bit (üç dahs, bir ditve a letter-space) alır. Bu düşünce çizgisi Shannon'a geri döner (bakınız sayfa 3-4). Daha fazla bilgi bulunabilirBlahut’un “Bilgi Teorisi ve Kodlama” ’da , örneğin, İngilizce’deki harf oluşumlarının (koşulsuz) olasılıklarını kullanarak Mors kodu için“ kaynak çıktı mektubu başına ortalama 9.296 birim sinyal süresi ”hesaplar. Biraz farklı bir açıklama için (bir zoolog tarafından!) JP Hailman'a bakabilirsiniz ; İngilizce bir harf için biraz farklı olasılıklar varsaydığı için farklı bir ortalama alır (10.2), ancak aksi takdirde analizi kavramsal olarak aynıdır.

Bunu özetlemek için: Mors kodunun birkaç görüşünü alabilirsiniz, ancak bazıları ilginç bir şey söylemekte diğerlerinden daha verimlidir. Ben bu model için "beşli" görünümünü ve sırayla kullanarak herhangi analizlerin farkında değilim değil sen oluşumu hakkında gerçek Morse içinde tutmayın birim alan bazı tahminlerde bulunmak üzere olurdu dört sembolleri indirgenebilmelidir Örneğin, iki bitişik olabilir, ancak üç bitişik birim boşluğa sahip olamazsınız (ki bu geçersiz Mors). Üçlü görünüm size benzersiz kod çözülebilirliğin hızlı bir analizini sunar. En derin / verimli görünüm, gerçek Mors kodunda olduğu gibi eşit olmayan miktarlarda bitlerle temsil edilen 3 veya 4 sembolü görendir (| dit| = 2, | dah| 4, letter-space| = 3 ve |word-space| = 6 veya 7); Üçlü / dörtlü simgeleri bir otomattaki geçişler olarak kabul etmek hala bu düşük seviyede anlayışlı.

Vikipedi'nin neden bu konuda emildiğine gelince ... sadece yaptığı bazı konularda. Http://en.wikipedia.org/wiki/Coding_theory konusundaki ana makaleleri de okumanı tavsiye ederim. Bilgi teorisinde bir uzman tarafından yazılmış görünmediğinden başka bahsettiğiniz (Petzold) kitabı hakkında fazla bir şey söyleyemem. Petzold, yalnızca Mors kodlu mesajların yalnızca bir harften oluşması durumunda, bir miktar ikili kodda olduklarını makul bir şekilde söyleyebileceğiniz anlamında doğrudur; Yine de kelimeler göndermek istiyorsanız, bir harf ayırıcısına ihtiyacınız var, aksi takdirde kod pratik olmayan bir noktaya kadar UD olmazdı.


Yazının tamamını revize etmem için biraz geç kaldım, ama @babou aşağıda göründüğü kadarıyla geçerli bir noktaya değiniyor: Shannon, Blahut ve diğerleri (şu anki) ITU standardını (zamandan beri değişmediği varsayılarak) yanlış yorumladılar. teknik: Birim boşluk aynı harfin altları ve yıldızları arasına eklenir , ancak yalnızca letter-spaceharflerin arasına eklenir. Standardın bu okuması, oldukça yeni bir uygulayıcı kitabına dayanarak kontrol ediliyor gibi görünmektedir . Biz bir tane 0 ödünç gerekir Yani letter-spaceher birine ditve dahonlar için sadece iki 0'lar bırakarak bir mektup terminal konumlarında olduklarında letter-space, yani . Bu aynı zamanda (örneğin) 'e' boyutunun 5 değil, yalnızca 4 bit olduğu anlamına gelir.T={10,1110,00}



Yorumlar uzun tartışmalar için değildir; bu konuşma sohbete taşındı .
Raphael

-1

Başlangıçta Mors kodu bir şerit kağıda yazı olarak yazılmak istendi, ancak telgraf operatörleri kısa sürede ekipmanın tıklamalarını "okuyabildi". Mors'un bu versiyonunda (Amerikan ya da "kara" Mors) üç "işaret" unsuru, nokta, çizgi ve uzun çizgi vardı.

Geçtiğimiz yüzyılda Uluslararası Mors'un kullanımı, telsiz iletimi yoluyla, genellikle elle (bir telgraf anahtarında) kodlanmış ve alıcı tarafından üretilen bip seslerini dinleyerek kulak tarafından deşifre edilmiştir. Nitelikli operatörler vasıfsız olanlardan daha iyi alabilir ve bazı insanlar diğerlerinden daha kolay anlaşılan kodlar üretebilir. İyi bir verici operatörün "iyi bir yumruk" olduğu söylenir. Beceriksiz bir operatöre LID adı verildi. ("Kapak" ın kökeni için - American Morse'da DD, daaahh, dit dit, dah dit dit yerine dah dit dit, Lid dit dit yerine LID gönderme konusundaki yaygın bir hatadan kaynaklandığını düşünüyorum. https://english.stackexchange.com/questions/31818/how-did-the-word-lid-come-to-mean-poor-operator-in-the-context-of-telegraph .)

Böylece, Morse'un "ikili formatta" kodlanması "amacına bağlıdır ve bu nedenle" iyi yumruk "ile" kötü yumruk "arasında kalitenin korunup korunmayacağına karar verilir. Sinyalin her bir bölümünün fazındaki veya süresindeki zorluklar için bir saat açma ve kapatma anahtarının bir saate eşleştirilmesi ve "düzeltilmesi" mi gerekiyor? Yoksa, muhtemelen daha sonra muayene veya zevk için, rasgele veya kafa karıştırıcı varyasyonları korumak için yeterli bir oranda örneklenecek midir?


1
Üzgünüm, bu soruya nasıl cevap veriyor?
Koray Tugay
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.