एएन कोड

From alpha
Jump to navigation Jump to search

एएन कोड[1] त्रुटि-सुधार कोड हैं जो अंकगणितीय अनुप्रयोगों में उपयोग किए जाते हैं। कंप्यूटर प्रोसेसर में आमतौर पर अंकगणितीय कोड का उपयोग किया जाता था ताकि इलेक्ट्रॉनिक्स के अधिक अविश्वसनीय होने पर उसके अंकगणितीय संचालन की सटीकता सुनिश्चित की जा सके। अंकगणितीय कोड प्रोसेसर को यह पता लगाने में मदद करते हैं कि त्रुटि कब की गई है और इसे ठीक करें। इन कोड के बिना, प्रोसेसर अविश्वसनीय होंगे क्योंकि किसी भी त्रुटि का पता नहीं चलेगा। AN कोड अंकगणितीय कोड होते हैं जिन्हें पूर्णांकों के नाम पर रखा जाता है और जिनका उपयोग कोडवर्ड को एनकोड और डिकोड करने के लिए किया जाता है।

ये कोड अधिकांश अन्य कोडों से भिन्न होते हैं, जिसमें वे हैमिंग वजन और हैमिंग दूरी के विपरीत कोडवर्ड के बीच अंकगणितीय दूरी को अधिकतम करने के लिए अंकगणितीय भार का उपयोग करते हैं। दो शब्दों के बीच की अंकगणितीय दूरी एक अंकगणितीय संक्रिया की गणना करते समय की गई त्रुटियों की संख्या का माप है। अंकगणितीय दूरी का उपयोग आवश्यक है क्योंकि अंकगणितीय ऑपरेशन में एक त्रुटि प्राप्त उत्तर और सही उत्तर के बीच एक बड़ी बाधा दूरी का कारण बन सकती है।

अंकगणितीय वजन और दूरी

एक पूर्णांक का अंकगणितीय भार बेस में द्वारा परिभाषित किया गया है

[citation needed]

कहां < , , और . किसी शब्द की अंकगणितीय दूरी उसके हैमिंग भार से ऊपरी सीमा होती है क्योंकि किसी भी पूर्णांक को उसके मानक बहुपद रूप द्वारा दर्शाया जा सकता है जहां पूर्णांक में अंक हैं। जहां सभी शर्तों को हटा रहा है ए अनुकरण करेगा इसके हैमिंग वजन के बराबर। अंकगणितीय वजन आमतौर पर हैमिंग वजन से कम होगा नकारात्मक होने की अनुमति है। उदाहरण के लिए, पूर्णांक जो है बाइनरी में हैमिंग का वजन है . यह अंकगणितीय भार पर एक त्वरित ऊपरी सीमा है . हालांकि, चूंकि नकारात्मक हो सकता है, हम लिख सकते हैं जो अंकगणितीय भार के बराबर बनाता है .

दो पूर्णांकों के बीच की अंकगणितीय दूरी किसके द्वारा परिभाषित की जाती है?

[citation needed]

यह अंकगणितीय कोड का विश्लेषण करते समय उपयोग की जाने वाली प्राथमिक मीट्रिक में से एक है।[citation needed]


एएन कोड

AND कोड पूर्णांकों द्वारा परिभाषित किए जाते हैं और और से पूर्णांकों को एनकोड करने के लिए उपयोग किया जाता है को ऐसा है कि

<

की प्रत्येक पसंद परिणाम एक अलग कोड में होगा, जबकि कोड की दूरी में उपयोगी गुणों को सुनिश्चित करने के लिए सीमित कारक के रूप में कार्य करता है। यदि बहुत बड़ा है, यह एक कोडवर्ड को कोड में बहुत कम अंकगणितीय भार के साथ दे सकता है जो पूरे कोड की दूरी को कम कर देगा। इन कोडों का उपयोग करने के लिए, दो पूर्णांकों पर एक अंकगणितीय ऑपरेशन करने से पहले, प्रत्येक पूर्णांक को गुणा किया जाता है . कोडवर्ड पर ऑपरेशन का परिणाम होने दें . ध्यान दें कि के बीच भी होना चाहिए को उचित डिकोडिंग के लिए। डिकोड करने के लिए, बस विभाजित करें . यदि का कारक नहीं है , तो कम से कम एक त्रुटि हुई है और सबसे संभावित समाधान वह कोडवर्ड होगा जिससे कम से कम अंकगणितीय दूरी होगी . हैमिंग दूरी का उपयोग करने वाले कोडों की तरह, AN कोड तक सही कर सकते हैं त्रुटियां जहां कोड की दूरी है।

उदाहरण के लिए, एक एएन कोड के साथ , जोड़ने का कार्य और दोनों ऑपरेंड को एन्कोड करके शुरू होगा। इसका परिणाम ऑपरेशन में होता है . फिर, समाधान खोजने के लिए हम विभाजित करते हैं . जब तक कि >, यह कोड के तहत एक संभावित ऑपरेशन होगा। मान लीजिए कि ऑपरेंड के प्रत्येक बाइनरी प्रतिनिधित्व में एक त्रुटि होती है जैसे कि और , तब . ध्यान दें कि जब से , प्राप्त शब्द और सही समाधान के बीच हैमिंग वजन है बस के बाद त्रुटियां। अंकगणितीय भार की गणना करने के लिए, हम लेते हैं जिसका प्रतिनिधित्व किया जा सकता है या . किसी भी मामले में, अंकगणितीय दूरी है अपेक्षा के अनुरूप क्योंकि यह की गई त्रुटियों की संख्या है। इस त्रुटि को ठीक करने के लिए, अंकगणितीय दूरी के संदर्भ में प्राप्त शब्द के निकटतम कोडवर्ड की गणना करने के लिए एक एल्गोरिथ्म का उपयोग किया जाएगा। हम एल्गोरिदम का विस्तार से वर्णन नहीं करेंगे।

यह सुनिश्चित करने के लिए कि कोड की दूरी बहुत कम न हो, हम मॉड्यूलर AN कोड परिभाषित करेंगे। एक मॉड्यूलर एएन कोड का एक उपसमूह है , कहां . कोड को मॉड्यूलर दूरी के संदर्भ में मापा जाता है जिसे एक ग्राफ के रूप में परिभाषित किया जाता है जिसमें कोने तत्व होते हैं . दो शिखर और जुड़े हुए हैं

कहां और <<, . फिर दो शब्दों के बीच मॉड्यूलर दूरी ग्राफ में उनके नोड्स के बीच सबसे कम पथ की लंबाई है। किसी शब्द का मॉड्यूलर वजन उसकी दूरी है जो बराबर है

व्यवहार में, का मूल्य आमतौर पर ऐसा चुना जाता है चूंकि अधिकांश कंप्यूटर अंकगणित की गणना की जाती है इसलिए कोड के सीमा से बाहर जाने के कारण डेटा का कोई अतिरिक्त नुकसान नहीं हुआ है क्योंकि कंप्यूटर भी सीमा से बाहर हो जाएगा। का चयन अन्य कोडों की तुलना में बड़ी दूरी वाले कोडों में भी परिणाम होता है।

के साथ मॉड्यूलर वजन का उपयोग करके , AN कोड चक्रीय कोड होंगे।

परिभाषा: एक चक्रीय एएन कोड एक कोड है का एक उपसमूह है , कहां .

एक चक्रीय एएन कोड रिंग का एक प्रमुख आदर्श है . पूर्णांक हैं और कहां और AN कोड की परिभाषा को पूरा करें। चक्रीय एएन कोड चक्रीय कोड का एक सबसेट है और इसमें समान गुण हैं।

मंडेलबौम-बैरो कोड्स

मैंडेलबाउम-बैरो कोड एक प्रकार का चक्रीय एएन कोड है जो डी. मैंडेलबाम और जे.टी. बैरो द्वारा शुरू किया गया है।[2][3] ये कोड चुनकर बनाए जाते हैं एक अभाज्य संख्या होना जो विभाजित नहीं होती है ऐसा है कि से उत्पन्न होता है और , और . होने देना जहां एक सकारात्मक पूर्णांक हो और . उदाहरण के लिए, चुनना , और परिणाम एक मैंडेलबाउम-बैरो कोड होगा जैसे कि < बेस में .

मंडेलबौम-बैरो कोड की दूरी का विश्लेषण करने के लिए, हमें निम्नलिखित प्रमेय की आवश्यकता होगी।

प्रमेय: चलो जनरेटर के साथ चक्रीय एएन कोड बनें , और

फिर,

सबूत: मान लें कि प्रत्येक एक अद्वितीय चक्रीय गैर-निकटवर्ती रूप है[4] प्रतिनिधित्व जो है

हम एक परिभाषित करते हैं तत्वों के साथ मैट्रिक्स कहां और . यह मैट्रिक्स अनिवार्य रूप से सभी कोडवर्ड्स की एक सूची है जहां प्रत्येक कॉलम एक कोडवर्ड है। तब से चक्रीय है, मैट्रिक्स के प्रत्येक स्तंभ में समान संख्या में शून्य हैं। हमें अब गणना करनी चाहिए , जो है उन कोडवर्ड्स की संख्या का गुना जो a से समाप्त नहीं होते हैं . चक्रीय NAF में होने की संपत्ति के रूप में, यदि कोई है साथ <. तब से साथ <, तब <. फिर उन पूर्णांकों की संख्या जिनके अंतिम बिट के रूप में एक शून्य है . इसे से गुणा करें कोडवर्ड में वर्ण हमें के कोडवर्ड के वजन का योग देते हैं जैसी इच्छा।

अब हम पिछले प्रमेय का उपयोग यह दिखाने के लिए करेंगे कि मैंडेलबाउम-बैरो कोड समान दूरी पर हैं (जिसका अर्थ है कि कोडवर्ड के प्रत्येक जोड़े की दूरी समान है), की दूरी के साथ

सबूत: चलो , तब और से विभाज्य नहीं है . इसका तात्पर्य वहाँ है . फिर . इससे यह सिद्ध होता है समान दूरी पर है क्योंकि सभी कोडवर्ड का भार समान होता है . चूँकि सभी कोडवर्ड्स का वजन समान होता है, और पिछले प्रमेय द्वारा हम सभी कोडवर्ड्स का कुल वजन जानते हैं, कोडवर्ड्स की संख्या (0 को छोड़कर) द्वारा कुल वजन को विभाजित करके कोड की दूरी पाई जाती है।

यह भी देखें


इस पेज में लापता आंतरिक लिंक की सूची

  • त्रुटि सुधार कोड
  • त्रुटि का पता लगाना और सुधार

संदर्भ

  1. Peterson, W. W. and Weldon, E. J.: Error-correcting Codes. Cambridge, Mass.: MIT Press, 1972
  2. Massey, J. L. and Garcia, O. N.: Error-correcting codes in computer arithmetic. In: Advances in Information Systems Science, Vol. 4, Ch. 5. (Edited by J. T. Ton). New York: Plenum Press, 1972
  3. J.H. Van Lint (1982). Introduction to Coding Theory. GTM. 86. New York: Springer-Verlag.
  4. Clark, W. E. and Liang, J. J.: On modular weight and cyclic nonadjacent forms for arithmetic codes. IEEE Trans. Info. Theory, 20 pp. 767-770(1974)

श्रेणी: त्रुटि पहचान और सुधार