ترميز زوجين من البايت
هذه المقالة يتيمة حيث أن عددًا قليلاً من المقالات أو لا مقالات إطلاقًا تصل إليها. ساعد من فضلك بإضافة وصلات في المقالات ذات العلاقة. (مارس_2010) |
هذا المقال أو المقطع ينقصه الاستشهاد بمصادر. الرجاء تحسين المقال بوضع مصادر مناسبة. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. وسم هذا القالب منذ: مارس_2010 |
ترميز زوجين من البايت (بالإنجليزية: Byte Pair Encoding) هو نموذج بسيط لضغط البيانات يقوم بستبدال زوجين من البايت على التوالي وأكثرهما شيوعاً ببايت واحد بحيث لا يتكرر البايت المستبدل في مجموعة البيانات. الزواج المستبدل يوضع في جدول لكي يتم إعادة بناء البيانات الأصلية.
مثال
لنفترض أننا نريد لترميز البيانات التالية:
aaabaaabac
زوجان aa يتكرران في معظم الأحيان لذلك سوف يتم استبداله بالبايت Z والذي لم يظهر في البيانات. والآن نضع البايت Z في جدول استبدال.
Z <- aa
ويعاد ترميز البيانات نحو التالي:
ZabZabac
بعد ترميز البيانات يظهر الزوجين Za بشكل مستمر لذلك سوف يتم استبدال بايت Y
Z <- aa Y <- Za
YbYbac
مرة أخرى نستبدال الزوجين الأكثر شيوعاً.
Z <- aa Y <- Za X <- Yb W <- XX
Wac
حتي نصل إلى مرحلة يستحيل ضغط البيانات بسبب عدم وجود أزواج من البايتات متكرره.