رمز الفاصلة

رمز الفاصلة هو نوع من أنواع الرموز الخالية من البادئات، حيث تظهر الفاصلة ، أو رمز معين، أو سلسلة من الرموز، في نهاية كلمة الرمز ولا تظهر في أي مكان آخر. [ 1 ] هذه طريقة بديهية للتعبير عن المصفوفات.

على سبيل المثال، ترميز فيبوناتشي هو ترميز فاصلة حيث الفاصلة هي 11. 11و 1011هي كلمات ترميز فيبوناتشي صالحة، لكن 101، 0111و 11011ليست كذلك.

أمثلة

  • الترميز الأحادي ، حيث تكون الفاصلة هي 0. وهذا يسمح بقيم NULL (عندما يكون الرمز والفاصلة عبارة عن فاصلة واحدة 0، يمكن اعتبار القيمة NULL أو 0).
  • في ترميز فيبوناتشي ، 11تُستخدم الفاصلة 11 للدلالة على أن الرمزين المستخدمين لتمثيل البيانات هما 0 و10. وهذا يُترجم إلى البتات 0 و1 عند تمثيل أي سلسلة بتات أو أرقام. عند تمثيل أي سلسلة بتات أو أرقام باستخدام هذه الطريقة، يُكتب '0' للصفر و'10' للواحد، و'11' للفاصلة، وتُكرر الفاصلة للقيمة الفارغة (NULL). ينتج عن ذلك رمزٌ يُشبه رمز فيبوناتشي، ولكنه يُترجم مباشرةً إلى سلسلة البتات بدلاً من الرقم المُمثل في متسلسلة فيبوناتشي. في ترميز فيبوناتشي القياسي، يُمثل كل عدد صحيح برمز فيبوناتشي، ويتطلب تحويل ترميز وفك ترميز الأعداد الصحيحة إلى رموز تحليل فيبوناتشي. باستخدام رموز فيبوناتشي الشبيهة، يتم أخذ سلسلة بتية أو عدد بتّي وكتابته كسلسلة من الأصفار والعشرات، وينتهي النص/العدد بالرقم 11. وهذا يسمح بالتعبير عن المصفوفات.
رمزالتمثيل الثنائي المعكوسكلمة سر فيبوناتشيرمز مشابه لفيوناتشيرمز إلياس المثقوب
1111111 1
2010110 111 01
311001110 1101 11
400110110 0 111001
5101٠٠٠١١10 0 1101 101
6011100110 10 1101 011
71110101110 10 11001 111
8٠٠٠١0000110 0 0 111 0001
9100110001110 0 0 1101 1001
1001010100110 10 0 1101 0101
11110100101110 10 0 11٠٠١ ١١٠١
1200111010110 0 10 1101 0011
131011000001110 0 10 11٠٠١ ١٠١١
14011110000110 10 10 11٠٠١ ٠١١١

يمكن تحليل شيفرة فيبوناتشي إلى جزء البيانات وجزء ما قبل الفاصلة (ليس العدد 11، بل عدد الآحاد في البيانات). هذه شيفرة إلياس مُعدّلة ، حيث يُكتب عدد الآحاد في الأرقام اللاحقة. أو يمكن إنشاء شيفرة فيبوناتشي من شيفرة إلياس المُعدّلة بكتابة 10 لكل 1 في البيانات و11 للرقم 1 الأخير في سلسلة البيانات. إذا كانت البيانات سلسلة بتات عشوائية، فيمكن كتابة 0 للصفر في سلسلة البتات و10 للواحد، ثم كتابة 11 كفاصل. هذا يسمح بقيمة فارغة (NULL) وهي ببساطة 11.

تسمح هذه الطريقة بالتعبير عن سلسلة بتات أو عدد بطول n في 1.5n+2 بت بافتراض وجود 0 و 1 بكميات متساوية في البيانات.

  • الفاصلة المحملة في رموز فيبوناتشي الشبيهة - إذا كان هناك بت واحد مضمون في سلسلة البتات، فيمكن وضعه حرفيًا بعد الفاصلة '11' وترجمة بقية البتات 0 -> 0 و 1 -> 10.
رمزشفرةالفاصلة المحملة
00
110
آخر 0110
آخر 1111

تسمح هذه الطريقة بالتعبير عن سلسلة بتات غير فارغة في 1.5n+1.5 بت بافتراض وجود 0 و1 بنفس القدر في البيانات.

  • يمكن تحويل جميع رموز هوفمان1 إلى رموز فاصلة عن طريق إضافة حرف "a" إلى الرمز بأكمله واستخدام حرف واحد 0كرمز والفاصلة.
رمزشفرةرمز الفاصلة
فاصلة- (غير متوفر)0
0٠٠100
101101
210110
311111

تعريف الكلمة هو عدد من الرموز تنتهي بفاصلة، وهي ما يعادل حرف المسافة . [ 2 ]

  • 50% فواصل في جميع البيانات - يمكن إثبات أن جميع البيانات الضمنية، وتحديداً البيانات التقابلية ذات الطول المتغير، تتكون من 50% من الفواصل بالضبط.

تُظهر جميع البيانات المُشفرة أو البيانات المُنسقة بشكل مناسب ذات الطول نفسه ما يُسمى بالاحتمالية الضمنية (إذا كان رمزًا صالحًا، فإن احتمالية حدوثه هي12لهـنزتح{\displaystyle {\frac {1}{2^{length}}}}).

يمكن تحليل هذه البيانات، التي يمكن تسميتها "البيانات العامة"، باستخدام أي ترميز أحادي متداخل كرؤوس، حيث تُقرأ بتات ثنائية إضافية (تساوي طول الترميز الأحادي المقروء) كبيانات، بينما يعمل الترميز الأحادي كمقدمة أو رأس للبيانات. يعمل هذا الرأس كفاصل. يمكن قراءة البيانات بطريقة متداخلة بين كل بت من الرأس، أو بطريقة القراءة اللاحقة، حيث تُقرأ البيانات فقط بعد قراءة رمز الرأس الأحادي بالكامل، كما في ترميز تشين-هو .

يمكن ملاحظة ذلك من خلال تقنيات المشي العشوائي والجمع الإحصائي أن جميع البيانات العامة تحتوي على رأس أو فاصلة بمتوسط ​​2 بت وبيانات إضافية بـ 2 بت (بحد أدنى 1).

وهذا يسمح أيضًا بخوارزمية زيادة أساسية غير مكلفة قبل الإرسال في قنوات الاتصال غير الثنائية، مثل قنوات الاتصال ذات الأساس 3 أو الأساس 5.

نرمز RLالكود التاليالبيانات التقابلية (غير الفارغة)الفواصل
11?0?؟ (1=1، 2=2)،
21 ?1?0 ?0??? (3,4,5,6=11,12,21,22)،,
31 ?1 ?1?0 ?0 ?0????...
41 ?1 ?1 ?1?0 ?0 ?0 ?0?????...
51 ?1 ?1 ?1 ?1?0 ?0 ?0 ?0 ?0?؟؟؟؟؟،,,,,
61 ?1 ?1 ?1 ?1 ?1?0 ?0 ?0 ?0 ?0 ?0?؟؟؟؟؟،,,,,,
71 ?1 ?1 ?1 ?1 ?1 ?1?0 ?0 ?0 ?0 ?0 ?0 ?0????????،,,,,,,
81 ?1 ?1 ?1 ?1 ?1 ?1 ?1?0 ?0 ?0 ?0 ?0 ?0 ?0 ?0?؟؟؟؟؟؟؟؟،,,,,,,,
91 ?1 ?1 ?1 ?1 ?1 ?1 ?1 ?1?0 ?0 ?0 ?0 ?0 ?0 ?0 ?0 ?0??????????،,,,,,,,,
101 ?1 ?1 ?1 ?1 ?1 ?1 ?1 ?1 ?1?0 ?0 ?0 ?0 ?0 ?0 ?0 ?0 ?0 ?0???????????،,,,,,,,,,
...

حيث يكون '؟' هو '1' أو '2' لقيمة الرقم التقابلي الذي لا يتطلب مزيدًا من المعالجة.

بالطبع، نستخدم فاصلة واحدة لفصل كل حقل من حقول البيانات، مما يدل على أن جميع البيانات تتكون من 50% من الفواصل. يجب أن يحافظ معدل تكلفة الحرف الواحد في الاتصالات ذات الأساس الأعلى على قيم قريبة من القيم اللوغاريتمية.لoز(بأsهـ)لoز(2){\textstyle {\frac {log(base)}{log(2)}}}بالنسبة للبيانات وأقل من 2 بت لحرف الفاصلة للحفاظ على فعالية التكلفة هنا.

تضمن هذه الطريقة وجود الرقم '1' أو '2' بعد كل فاصلة، ويمكن أن تكون هذه الخاصية مفيدة عند تصميم حلول تراعي مخاوف التوقيت في الإرسال.

1?
0 ?1?
0 ? 0?1?
0 ? 0? 0?1?
0 ? 0? 0?0 ?1?
0 ? 0? 0? 0? 0?1?
0 ? 0? 0? 0? 0? 0?1?
0 ? 0? 0? 0? 0? 0? 0?1?
0 ? 0? 0? 0? 0? 0? 0?0 ?1?
0 ? 0? 0? 0? 0?0?0 ? 0? 0?1?

قد يكون تحويل قيمة ثنائية معروفة (القيمة الأخيرة المسطرة لا تتطلب تقنيًا تحويلًا إلى ثلاثية) إلى قيمة ثلاثية (نعتبر الفاصلة الرقم '3') مكلفًا نوعًا ما، إلا إذا انخفضت تكلفة بتات القيمة الثلاثية لتصبح مماثلة لتكلفة بتات القيمة الثنائية، بحيث يمكن دمج هذا البت في قناة ثنائية منفصلة إذا كانت التكاليف متوافقة (قد يتطلب ذلك قراءة جزء إضافي "ذيلي" من بتين من البيانات المفيدة أو رمز أحادي كامل معروف أنه يتكون من حوالي بتين كحشو للقناة الثنائية (من بعد البت الأول من التغيير الأول، لأن هذا الرمز ليس قابلًا للفك الفوري، بل يُقرأ ببساطة إذا كان الرمز الأحادي قابلًا للفك الفوري)).3{\displaystyle 3}بتات مشابهة لمتوسط ​​البتات الثلاثية المتبقية على القناة الأساسية، أي ما يعادل2*لoز(3)لoز(2)=3.17{\textstyle 2*{\frac {log(3)}{log(2)}}=3.17}(قبل احتساب مقارنات التكلفة). يهدف الحشو إلى محاولة ضمان وصول البيانات ذات الصلة عبر التدفقات في أوقات متقاربة، وإلا فسيكون لدينا بت واحد (البت الأخير المسطر أعلاه) في القناة الثنائية وحوالي 3.17 بت في القناة الثلاثية (بما في ذلك الفاصلة فقط لجميع الفواصل) (مرة أخرى، دون احتساب وضع إرسال مختلف تمامًا مع زمن استجابة مختلف محتمل).

بغض النظر عن تعدد الإرسال، تتميز هذه الطريقة بكفاءة قراءة تبلغ 3 أرقام ثلاثية لقراءة 4 بتات ثنائية أو 1.33 بت.4/3لoز(3)لoز(2)=84.12%{\textstyle {\frac {4/3}{\frac {log(3)}{log(2)}}}=84.12\%}

تسمح هذه الطريقة بالتعبير عن سلسلة بتات أو عدد بطول n في 2n بت بافتراض وجود 0 و 1 بكميات متساوية في البيانات.

  • 66.66% (2/3) من الفواصل في جميع البيانات - يمكن إثبات أن جميع البيانات الضمنية، وتحديداً البيانات ذات الطول المتغير، تتكون من 66.66% (2/3) من الفواصل بالضبط.
نرمز RLالكود التاليالبيانات التقابلية (تحتوي على قيمة فارغة)الفواصل
110فارغ (أو 0)،
21 ?10 ?0؟ (1=1، 2=2)،,
31 ?1 ?10 ?0 ?0?? (3,4,5,6=11,12,21,22)...
41 ?1 ?1 ?10 ?0 ?0 ?0???...
51 ?1 ?1 ?1 ?10 ?0 ?0 ?0 ?0????،,,,,
61 ?1 ?1 ?1 ?1 ?10 ?0 ?0 ?0 ?0 ?0؟؟؟؟؟،,,,,,
71 ?1 ?1 ?1 ?1 ?1 ?10 ?0 ?0 ?0 ?0 ?0 ?0؟؟؟؟؟،,,,,,,
81 ?1 ?1 ?1 ?1 ?1 ?1 ?10 ?0 ?0 ?0 ?0 ?0 ?0 ?0???????،,,,,,,,
91 ?1 ?1 ?1 ?1 ?1 ?1 ?1 ?10 ?0 ?0 ?0 ?0 ?0 ?0 ?0 ?0؟؟؟؟؟؟؟؟،,,,,,,,,
101 ?1 ?1 ?1 ?1 ?1 ?1 ?1 ?1 ?10 ?0 ?0 ?0 ?0 ?0 ?0 ?0 ?0 ?0?????????،,,,,,,,,,
...

حيث يُمثل الرمز '؟' القيمة '1' أو '2' للرقم المقابل الذي لا يتطلب معالجة إضافية. تُنتج هذه الطريقة تشابهًا إحصائيًا مع "قراءة ضمنية" بسيطة لرموز هوفمان ذات الأساس 3: 0, 10, 11(صافي 2/3 أو 66.66% فواصل).

يمكن ملاحظة ذلك من خلال تقنيات المشي العشوائي والجمع الإحصائي أن جميع البيانات العامة تحتوي على رأس أو فاصلة بمتوسط ​​2 بت وبيانات ببت إضافي واحد (الحد الأدنى 0).

لا يضمن هذا وجود الرقم '1' أو '2' بعد كل '0' (فاصلة)، وهي خاصية يمكن أن تكون مفيدة عند تصميم حلول تتعلق بالتوقيت في الإرسال.

تتميز هذه الطريقة بكفاءة قراءة تبلغ 2 رقم ثلاثي لقراءة 3 بتات ثنائية أو 1.5 بت ثنائي لكل رقم ثلاثي.3/2لoز(3)لoز(2)=94.64%{\textstyle {\frac {3/2}{\frac {log(3)}{log(2)}}}=94.64\%}

تتيح هذه الطريقة التعبير عن سلسلة بتات أو عدد بطول n باستخدام 2n+1 بت، بافتراض وجود الأصفار والآحاد بنسب متساوية في البيانات. يمكن افتراض أن القيمة 0 هي صفر بت أو سلسلة فارغة "" متبوعة بالرقم 1.

  • 34.375% | 31.25% (حوالي الثلث) استخدام الفواصل لتحسين الكفاءة باستخدام تجزئة الأعداد - تُظهر عمليات القراءة والكتابة الضمنية باستخدام تقنيات تجزئة الأعداد (حيث يؤدي تقسيم 'm' عددًا إلى 'n' قسمًا إلى n^m تبديلًا) على غرار ترميز Chen-Ho و Hertz كفاءةً أكبر في كلٍ من عمليات القراءة والكتابة، مما يُشابه التوزيع العشوائي تقريبًا. وبالتالي، يصبح استخدام الرموز أقل جدوى، بينما يصبح استخدام قواعد عد أعلى أكثر أهمية. وبالمثل، تُصبح فاصلة "الكتابة" أي عدد في الأساس، بينما تُصبح فاصلة "القراءة" هي العنوان الموضح أدناه، رموز هوفمان ذات الأساس 4: 0, 10, 110, 111.

تتمثل الميزة الرئيسية لهذه التقنية، إلى جانب كفاءتها العالية، في عدم الحاجة إلى تحويل الأساس، الأمر الذي كان سيتطلب قراءة كامل البيانات أولاً ثم تحويلها. أما عيبها، فهو زيادة متوسط ​​طول الأرقام، وظهور مشاكل التوقيت التي تحكم الإرسال الثلاثي، على غرار توليد الأرقام العشوائية. مع m=2 و n=2، نحصل على (مع الأخذ في الاعتبار أن قيمة '(2)' هي في الأساس بتات أصفار):

التشفير الثنائيالأرقام الثلاثية
يقرأ -  مساحة الكود (128  ولاية)ب3ب2ب1b0القيم المشفرةوصفيكتب - حالات (100  ولاية)
50% (64  ولاية)0أب(0–1) (0–1)رقمان صغيران44.44% (45  ولاية)
25% (32  ولاية)10أ(2) (0–1)رقم واحد أقل،

رقم واحد أعلى

22.22% (22  ولاية)
12.5% ​​(16  ولاية)110ب(0–1) (2)22.22% (22  ولاية)
12.5% ​​(16  ولاية)111(2) (2)رقمان أعلى11.11% (11  ولاية)

وبالتالي، تتميز هذه الطريقة بكفاءة قراءة تبلغ رقمين ثلاثيين لقراءة من50*3+25*3+12.5*4+12.5*3=3.125{\textstyle 50*3+25*3+12.5*4+12.5*3=3.125}بتات ثنائية أو 1.5625 بت ثنائي/رقم ثلاثي. أو3.125*12لoز(3)لoز(2)=98.58%{\textstyle {\frac {3.125*{\frac {1}{2}}}{\frac {log(3)}{log(2)}}}=98.58\%}.

كفاءة كتابة تبلغ رقمين ثلاثيين لعملية كتابة من49*3+29*3+29*4+19*3=3.22{\textstyle {\frac {4}{9}}*3+{\frac {2}{9}}*3+{\frac {2}{9}}*4+{\frac {1}{9}}*3=3.22}بتات أو 1.61 بت ثنائي/رقم ثلاثي، أولoز(3)لoز(2)299*12=98.38%{\textstyle {\frac {\frac {log(3)}{log(2)}}{{\frac {29}{9}}*{\frac {1}{2}}}}=98.38\%}

  • الأعداد الأساسية لتحويل الأساس بكفاءة - بما أنه قد تم التأكد من أن رموز الفاصلة تشبه إلى حد كبير تحويل الأساس، فإن الشاغل الوحيد هو الكفاءة والتوقيت، لذا يتم التحويل/التعيين المباشر لـ 19 بت ثنائي219=524288{\textstyle 2^{19}=524288}الأعداد حتى 12 ثلاثية312=531441{\textstyle 3^{12}=531441}تسمح الأرقام بكفاءة219312=98.65%{\textstyle {\frac {2^{19}}{3^{12}}}=98.65\%}أولoز321912=99.9%{\textstyle {\frac {log_{3}{2^{19}}}{12}}=99.9\%}تعتمد الكفاءة على طريقة الحساب. وهذا ينجح لأن219<312{\textstyle 2^{19}<3^{12}}و219{\textstyle 2^{19}}312{\textstyle 3^{12}}هذا بالطبع بناء نظري أكثر منه بناء نظري، ولا يتطرق إلى مسألة التوقيت عند محاولة تطبيقه على طرق الإرسال الثلاثية. ومع ذلك، فإنه يترك531441-524288=7153{\textstyle 531441-524288=7153}أكواد لتصميم حلول تراعي اعتبارات التوقيت.

انظر أيضاً

مراجع

  1. ويد، غراهام (8 سبتمبر 1994). ترميز الإشارات ومعالجتها . مطبعة جامعة كامبريدج. ص  56. ISBN 978-0-521-42336-6.
  2. ^ ديفيد سالومون. موتا، جيوفاني (2010). دليل ضغط البيانات . سبرينغرلينك بوخر ( الطبعة الخامسة). لندن: سبرينغر لندن. ص 62، 116. ردمك   978-1-84882-902-2.