בדיקת יתירות מחזורית – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
אין תקציר עריכה
אירי (שיחה | תרומות)
←‏מבוא: תיקון תרגמת
שורה 6:
 
== מבוא ==
CRC מבוסס על תאוריה של קוד למחזורמחזורי שגיאות(מעגלי) מתוקנותלתיקון שגיאות. השימוש במחזורבקוד קודמחזורי שיטתי, אשר מקודד הודעות על ידי הוספה של ערך בדיקה עם גודל מתוקןקבוע, בשביל איתור שגיאות בתקשורתברשתות רשתותתקשורת. CRC הוצג לראשונה על ידי [[וו. ווסלי פטרסון]] ב-1961. קודים ממוחזריםמחזוריים הם לא רק דוגמהפשוטים להטמעהלמימוש, אלא הם גם טובים במיוחד לאיתור burstפרצי errorsשגיאות בהודעות עם נתונים אשר נשלחות ברצף. זה חשוב בגלל שburstשפרצי errorsשגיאות הם בעיות העברה נפוצות ב[[ערוץ תקשורת|ערוצי תקשורת]], אשר כוללים התקני אחסון מגנטיים ואופטיים. n bit CRC טיפוסי אשר מוצמד לבלוק מידע עם אורך שרירותי יאתר כל שגיאת פתע אשר לא גדולה יותר מ n bits  ויאתר 1 − 2<sup>−''n''</sup> מהburstמפרצי errorsשגיאות הגדולות מn bits.
 
אפיון של קוד CRC דורש הגדרה של מה שנקרא [[קודפולינום פולינומייוצר]]. הפולינום הזה נעשה מחלק של ה [[polynomial long division]], אשר לוקח את ההודעה כמחולקת ומחסיר את המנה והיתרה היא התוצאה. האזהרה החשובה היא כשאר ה[[מקדם (מתמטיקה)|מקדם]] הפולינומי שחושב בהתאם ל[[שדה סופי|שדה הסופי]] האריתמטי, כך שפעולה נוספת יכולה לממש רוחב בתים מקבלים (אין משיכה בין ספרות). הגודל של השארית הוא תמיד נמוך מהגודל של המחולל הפולינומי, אשר ממחיש כמה גדולה התוצאה יכולה להיות.{{הערה|{{צ-מאמר|מחבר = Peterson, W. W. and Brown, D. T|שם = Cyclic Codes for Error Detection|כתב עת = Proceedings of the IRE 49|כרך = 49(1)|עמ = 228-235}}}}
 
למעשה, כל השימושים הנפוצים בCRC משתמשים ב'''[[שדה סופי]]''' של שני אלמנטים. שני האלמנטים בדרך כלל נקראים 1 ו 0, שבאופן נוח ביותר תואם לארכיטקטורה של המחשב.