کدبندی طول اجرا

کدبندی طول اجرا (به انگلیسی: Run-Length Encoding (RLE)) یک شکل ساده از فشرده‌سازی داده‌ها است که در آن داده‌های یکسان پشت سر هم به صورت مقادیر تکی و تعداد تکرارشان ذخیره می‌شوند.[۱][۲]

مثال ویرایش

به عنوان مثال، یک صفحهٔ سفید حاوی متن سیاه ساده در نظر بگیرید. ممکن است اجراهای طولانی زیادی از پیکسلهای سفید در فضای خالی وجود داشته باشد و اجراهای کوتاه زیادی نیز از پیکسل‌های سیاه در داخل متن سیاه‌رنگ یافت شود. برای درک بهترِ، یک خط اسکن‌شدهٔ فرضی را در نظر بگیرید که در آن B نشان‌دهندهٔ پیکسل‌های سیاه و W نمایندهٔ پیکسیل‌های سفید است:

WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWW

با اعمال کدبندی طول اجرا برای خط اسکن‌شدهٔ فرضی بالا، کد زیر به دست می‌آید:

12W1B12W3B24W1B14W

که به صورت دوازده W یک B دوازده W سه B بیست و چهار W یک B و چهارده W تفسیر خواهد شد.[۳]

این کد run-length، شصت و هفت نویسه اصلی را تنها در هجده نویسه نشان می‌دهد. البته معمولاً برای ذخیره‌سازی تصاویر از قالب دودویی به جای اَسکی استفاده می‌شود، اما اصل کار یکسان خواهد بود.

منابع ویرایش

  1. "Run Length Encoding Patents". Internet FAQ Consortium. 21 March 1996. Retrieved 14 July 2019.
  2. "Method and system for data compression and restoration". Google Patents. 7 August 1984. Retrieved 14 July 2019.
  3. "Data recording method". Google Patents. 8 August 1983. Retrieved 14 July 2019.