کد همینگ: تفاوت میان نسخه‌ها

از ویکی‌پدیا، دانشنامهٔ آزاد
محتوای حذف‌شده محتوای افزوده‌شده
بدون خلاصۀ ویرایش
بدون خلاصۀ ویرایش
خط ۱: خط ۱:
{{بهبود منبع}}
{{بهبود منبع}}
در [[مخابرات]]، کد همینگ، کد تصحیح خطای خطی می‌باشد که به افتخار [[ریچارد همینگ]]، مخترع آن گذاشته شده‌است. کدهای همینگ می‌توانند همزمان ۲ بیت خطا را شناسایی کنند و ۱ بیت خطا را تصحیح کنند. در نتیجه مخابره قابل اطمینان در صورتی که فاصله همینگ بین رشته بیت فرستنده و گیرنده یک یا کمتر از یک باشد، ممکن می‌شود.
در [[مخابرات]]، کد همینگ، کد تصحیح خطای خطی می‌باشد که به افتخار [[ریچارد همینگ]]، مخترع آن گذاشته شده‌است. کدهای همینگ می‌توانند همزمان ۲ بیت خطا را شناسایی کنند و ۱ بیت خطا را تصحیح کنند؛ از طرفی [[:en:Parity_bit|parity code]] به تنهایی نمی‌تواند خطا‌ها را تصحیح کند و فقط فرد تعداد بیت از خطاها را تشخیص می‌دهد.

<ref>{{Cite journal|date=2018-12-09|title=Hamming code|url=https://en.wikipedia.org/w/index.php?title=Hamming_code&oldid=872897501|journal=Wikipedia|language=en}}</ref>ریچارد همینگ، این متد را در سال ۱۹۵۰ ابداع کرد به عنوان روشی که تصحیح خطا را به صورت اتوماتیک انجام می‌داد؛ او در مقاله‌ی اصلی خود، [[:en:Hamming(7,4)|کد‌های همینگ(۷،۴)]] را مورد بررسی قرار می‌دهد که‌ سه بیت توازن(‌parity) به داده‌ی چهار بیتی اضافه می‌کند.<ref>{{Cite journal|date=2018-12-09|title=Hamming code|url=https://en.wikipedia.org/w/index.php?title=Hamming_code&oldid=872897501|journal=Wikipedia|language=en}}</ref>

در نتیجه مخابره قابل اطمینان در صورتی که فاصله همینگ بین رشته بیت فرستنده و گیرنده یک یا کمتر از یک باشد، ممکن می‌شود.


== کد بدون وزن همینگ ==
== کد بدون وزن همینگ ==

نسخهٔ ‏۲۴ ژانویهٔ ۲۰۱۹، ساعت ۱۷:۱۹

در مخابرات، کد همینگ، کد تصحیح خطای خطی می‌باشد که به افتخار ریچارد همینگ، مخترع آن گذاشته شده‌است. کدهای همینگ می‌توانند همزمان ۲ بیت خطا را شناسایی کنند و ۱ بیت خطا را تصحیح کنند؛ از طرفی parity code به تنهایی نمی‌تواند خطا‌ها را تصحیح کند و فقط فرد تعداد بیت از خطاها را تشخیص می‌دهد.

[۱]ریچارد همینگ، این متد را در سال ۱۹۵۰ ابداع کرد به عنوان روشی که تصحیح خطا را به صورت اتوماتیک انجام می‌داد؛ او در مقاله‌ی اصلی خود، کد‌های همینگ(۷،۴) را مورد بررسی قرار می‌دهد که‌ سه بیت توازن(‌parity) به داده‌ی چهار بیتی اضافه می‌کند.[۲]

در نتیجه مخابره قابل اطمینان در صورتی که فاصله همینگ بین رشته بیت فرستنده و گیرنده یک یا کمتر از یک باشد، ممکن می‌شود.

کد بدون وزن همینگ

دسته‌ای از کدها برای تشخیص و تصحیح خطا در ارسال اطلاعات استفاده می‌شوند. که به آنها کد همینگ می‌گویند.در این کدها حداقل اختلافی که بین دوکد نمایشی وجودداردفاصله همینگ نامند.

ما در اینجا کد همینگ با حداقل فاصله 3 را توضیح می‌دهیم. یعنی بیتهایی را که به آنها اضافه می‌کنیم 3 بیت می‌باشد. چون در کد همینگ به منظور تشخیص و تصحیح خطا باید بیتهایی را به کدمان اضافه کنیم.

اگر بخواهیم کد NBCD را با حداقل فاصله 3 ارسال کنیم. باید به کد NBCD ، سه بیت اضافه کنیم. که اطلاعات ارسالی به صورت زیر می‌شود. C1 c2 b3 c4 b5 b6 b7 که در اینجا بیت c1 و c2 و c4 سه بیتی هستند که به کدمان اضافه می‌شوند و به آنها بیتهای الحاقی می‌گویند و به بیتهای b3 و b5 و b6 و b7 بیتهای اطلاعاتی می‌گویند.

مقادیر سه بیت الحاقی به صورت زیر محاسبه می‌شود.

{C1={ b3, b5 , b7} c2={ b3 , b6 , b7 } c4={ b5 , b6 , b7 }

که در آنها اگر تعداد یک‌ها زوج بود حاصل c برابر صفر و اگر فرد بود برابر یک می‌شو.د.

به عنوان مثال رقم 5 در کد NBCD را به روش زیر ارسال می‌کنیم.

c1=? c2=? b3=0 c4=? b5=1 b6=0 b7=1

c1={ b3 , b5 , b7 }= { 0,1،1} ====> c1=0

1= c2={ b3 , b6 , b7 }= { 0,0،1 }====> c2

0= c4={ b5 , b6 , b7 }= { 1,0،1 }====> c4

پس بر اساس اعداد به دست آمده عدد 5 هنگام ارسال به صورت 0100101 ارسال می‌شود.

جستارهای وابسته

منابع

  1. "Hamming code". Wikipedia (به انگلیسی). 2018-12-09.
  2. "Hamming code". Wikipedia (به انگلیسی). 2018-12-09.