كود هامنج

من ويكيبيديا، الموسوعة الحرة
اذهب إلى التنقل اذهب إلى البحث
جدول 1
جدول 2
جدول 3
جدول 4
جدول 5
جدول 6

كود هامنج (بالإنجليزية: hamming code) هو ترميز خطي يستخدم لكشف وتصحيح أخطاء البيانات الرقمية وحفظها، والذي طُور من طرف ريتشارد ويسلي هامنج [1]. هناك إمكانية لاستخدام هامنج كود مع ما يعرف ببت التماثل، واللذان يستخدمان في المرسل والمستقبل لمعرفة إذا ما ما حدث تغير أو خطأ في الكود الرقمي المرسل وتصحيح الخطأ في حال حدوثه، من أجل ضمان وصول البيانات المرسلة بدقة.

مثال يبين كيفية استكشاف الخطأ[عدل]

نفرض ان المرسل سوف يقوم بارسال الكود التالي المكون من 8 بت بمساعدة هامنج كود:

طريقة هامنج كود انه يقوم بارسال بت اضافية تسمى البت المساعدة إلى الكود المرسل في المواقع 32,16,8,4,2,1 إلى اخره على حسب طول الكود المرسل.
على سبيل المثال اذا اراد المرسل إرسال 4 بت يتم اضافة البت المساعدة في الكود في المواقع 1 و2 و4 فيصبح الكود المعدل مكون من 7 بت مثال اخر عند إرسال كود مكون من 8 بت يتم اضافة البت المساعدة في الكود في المواقع 1 و2 و4 و8 فيصبح الكود المعدل مكون من 12 بت كما موضح في الجدول 2.

لاستخراج قيمة البت المساعدة يقوم بتحويل البت التي قيمتها 1 من الكود المرسل إلى نظام عدد ثنائي ثم عمل بوابة اكس أور (XOR)ما بينها وبعدها يتم تعويض الناتج في المواقع 1 و2 و4 و8 كما هو موضح في الجدولين 3 و4.
نفترض أن المستقبل استقبل الكود من غير أخطاء فيقوم المستقبل بمعرفة الخطأ. عن طرق تحويل المواقع التي قيمتها 1 في الكود إلى نظام عدد ثنائي وعمل بوابة اكس اور ما بينها والنانج مع البت المساعدة أيضا عن طريق البوابة اكس اور كما هوموضح في الجدولين 5 و6. واذا كان الناتج 0 فهذا يدل ان الكود لم يحصل به اي خطأ خلال الإرسال والاستقبال.

انظر أيضا[عدل]

مصادر[عدل]