آیا شما به مسابقههای بیست سوالی علاقه دارید؟ در این مسابقات شما تنها میتوانید سوالاتی بپرسید که پاسخ آن بله یا خیر است. هیچ توضیحی همراه سوالات شما وجود ندارد و تنها بله یا خیر میشنوید. مثلا به عنوان اولین سوال میپرسید که آیا آن چیز یک موجود زنده است؟ میگوید بله. میپرسید که آیا توی جیب جا میشود؟ میگوید خیر.
میپرسید آیا انسان است؟ میگوید بله. میپرسید آیا یک شخص مشهور است؟ میگوید بله. میپرسید آیا یک هنرمند است؟ میگوید خیر. آیا یک ورزشکار است؟ خیر. آیا یک دانشمند بزرگ است؟ خیر. آیا یک متفکر بزرگ است؟ خیر. آیا ثروتمند است؟ بله. آیا جزو ثروتمندترینهای جهان ست؟ بله. آیا کچل است؟ خیر. آیا اهل چین است؟ خیر. آیا اهل آمریکاست؟ بله. آیا پوپولیست است؟ بله. آیا احمق نیز هست؟ بله. شما بلافاصله میپرسید آیا پاسخ ایلان ماسک است؟ شخص میگوید بله پاسخ صحیحی دادید و شما مسابقه را بردید. شما اینجا با شانزده پرسش و شانزده پاسخ بله یا خیر به پاسخ صحیح رسیدید.
حالا اجازه دهید به جای پاسخهای بله، من عدد 1 را قرار دهم و به جای پاسخهای خیر، عدد 0 را قرار دهم. حالا من میتوانم پاسخ این سوال را به صورت یک کد صفر و یکی به دیگری منتقل کنم. پاسخ این معمای بیست سوالی در اینجا 101100001100110000 خواهد بود. من در اینجا توانستم بسیاری از اطلاعات معرف یک شخص را به صورت کدهای صفر و یکی در بیاورم. من از سمت چپ شروع کردم و هر سوالی که پاسخ آن بله بود، در کد خودم 1 قرار دادم و هر سوالی که پاسخ آن خیر بود، در کد خودم 0 را قرار دادم. از آنجایی که قرار بود معمای ما بیست سوالی باشد، من از سوال شانزدهم که به پاسخ صحیح رسیدم به بعد را صفر قرار دادم. چون دیگر نیازی نبود سوالی بپرسم.
به همین خاطر، شما میبینید که چهار رقم سمت راست همگی صفر شد. این کار یک فایده دارد. اینکه شما با دیدن کد من میتوانید بفهمید که من کجا به پاسخ درست رسیده ام و کد کجا به پایان میرسد. ما به هریک از این صفر و یکها، یک بیت bit یا رقم دودویی یا binary digit میگوییم. پس یک بیت، انگار پاسخ بله یا خیر به یک سوال است. ما به هر هشت عدد بیت، یک بایت یا byte میگوییم. ما با این مثال دیدیم که هر نوع اطلاعاتی که بخواهیم را میتوانیم به صورت کدهای صفر و یک در بیاوریم. اینجا ما اطلاعاتی راجع به ایلان ماسک را به صورت صفر و یک در یک کد بیست رقمی، درآوردیم. در جای دیگر ممکن است یک فرمول ریاضی را به صورت صفر و یک در بیاوریم.
شخص دیگری ممکن است یک داستان را به صورت صفر و یک در بیاورد. یک نفر دیگر یک تصویر را به این صورت در میآورد. این نوشتهی من نیز به صورت صفر و یک در آمده و به شما رسیده است. ما میتوانیم اسم این فرآیند را کدگذاری یا encoding بگذاریم. حالا من میتوانم این کد را برای کسی بفرستم تا او نیز به این اطلاعات برسد. اما یک مساله باقی میماند.
او باید بداند که پرسشهای من چه بوده است؟ او اگر از پرسشهای من اطلاعی نداشته باشد، این صفر و یکها به هیچ دردش نخواهد خورد. او باید کدها را با فرآیندی مشابه اما عکس کدگذاری من انجام دهد که به آن فرآیند، رمزگشایی یا decoding گفته میشود.
-اَبا اِباد