विषय
डेटा धाराओं में त्रुटि सुधार जानकारी सम्मिलित करने के लिए हैमिंग कोड का उपयोग किया जाता है। कोड डिज़ाइन किए गए हैं ताकि एक त्रुटि का न केवल पता लगाया जा सके, बल्कि उसे ठीक भी किया जा सके। त्रुटि सुधार जानकारी जोड़ने से डेटा की मात्रा बढ़ जाती है, लेकिन यह उच्च त्रुटि दर के साथ मीडिया पर संचार की विश्वसनीयता भी बढ़ाता है।
हैमिंग कोडिंग को लागू करने के लिए जटिल हो सकता है, लेकिन बिट-स्तरीय अंकगणितीय चाल का उपयोग करके इसे बहुत जल्दी किया जा सकता है। यह एक उपयोगी और उच्च गति त्रुटि सुधार प्रणाली के निर्माण की अनुमति देता है, जिसका उपयोग एम्बेडेड अनुप्रयोगों में किया जाता है।
चरण 1
डेटा शब्द बनाएँ। कोई भी स्थिति जो दो (पहले, दूसरे, चौथे, आदि) की शक्ति है, को समता की जानकारी के लिए आरक्षित किया जाना चाहिए। जब तक शब्द का मूल डेटा और समता बिट्स होना आवश्यक हो, तब तक उपयोग करें।
उदाहरण:
1 1 0 1 0 0 1 0 _ _ 1 _ 1 0 1 _ 0 0 1 0 हो जाता है
मूल बिट्स एक ही क्रम में रहते हैं, लेकिन समता बिट्स को सम्मिलित करने के लिए फैल गए थे।
चरण 2
पहले समता बिट की गणना करें। पहले बिट से शुरू करके, थोड़ा पढ़ा जाता है और फिर थोड़ा सा छोड़ दिया जाता है और प्रक्रिया को अंत तक दोहराया जाता है। इस बीच, पाया जाने वालों की संख्या गिना जाती है। इस प्रक्रिया में पैरिटी बिट्स की गिनती नहीं की जाती है।
यदि लोगों की संख्या समान है, तो पहले बिट को शून्य पर सेट करें। अन्यथा, इसे एक पर सेट करें।
उदाहरण:
बिट्स 1, 3, 5, 7, 9 और 11 _ _ 1 _ 1 0 1 _ 0 0 1 1, _11101 में चार होते हैं। यह भी है, इसलिए पहला बिट शून्य पर सेट है: 0 _ 1 _ 1 0 1 1 _ 0 0 1 1 0
चरण 3
शेष समता बिट्स की गणना करें। दूसरे बिट के साथ शुरू, दो बिट्स पढ़े जाते हैं और फिर दो बिट्स को छोड़ दिया जाता है और प्रक्रिया को अंत तक दोहराया जाता है। चौथा बिट चार बिट्स को पढ़ता है, एक और चार को छोड़ देता है, बिट चार से शुरू होता है। एक ही पैटर्न सभी समानता बिट्स द्वारा पीछा किया जाता है, जब तक कि वे सभी गणना नहीं करते।
उदाहरण:
बिट 2: 0 _ 1 _ 1 0 1 _ 0 1 1 0 _1, 01, 01, जिसमें तीन होते हैं, इसलिए बिट 2 एक पर सेट है। बिट 4: _ 0 1 1 1 0 1 _ 0 0 1 0 _101, 0, जिसमें दो होते हैं, इसलिए बिट 4 को शून्य पर सेट किया जाता है। बिट 8: 0 1 1 0 0 1 1 0 0 0 1 0 0 चेक _0010, जिसमें केवल एक होता है, इसलिए बिट 8 को एक पर सेट किया जाता है।
इसलिए इस शब्द को 011010110010 के रूप में कोडित किया गया है।
चरण 4
शब्द की पुष्टि करें। यदि कोई शब्द दूषित है, तो समता बिट्स वह नहीं होगा जो अपेक्षित है। यह पुष्टि करने के लिए कि यह शब्द दूषित नहीं है, बस दो और तीन चरणों का उपयोग करके समता बिट्स की गणना करें। यदि बिट्स समान नहीं हैं, तो उनकी स्थिति रिकॉर्ड करें।
चरण 5
गलत को ठीक करो। यदि आप गलत समता बिट्स पाते हैं, तो बस बिट्स की स्थिति जोड़ें। योग मान गलत बिट की स्थिति है। इस स्थिति में बिट मान बदलें।
उदाहरण के लिए, यदि गलत समता बिट्स एक और चार हैं, तो पांचवें बिट के मान को बदलने से त्रुटि सही हो जाएगी।