बाइट एड्रेसिंग

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

पृष्ठभूमि
डिजिटल संग्रहितेज की मूल इकाई बिट है, जो एक 0 या 1 को संग्रहित करती है। कई सामान्य निर्देश सेट आर्किटेक्चर समय में 8 बिट से अधिक डेटा को एड्रेसिंग कर सकते हैं। उदाहरण के लिए, 32-बिट x 86 प्रोसेसर में 32-बिट सामान्य-उद्देश्य रजिस्टर होते हैं और एकल निर्देशों में 32-बिट (4-बाइट) डेटा को संभाल सकते हैं। चूंकि, मेमोरी में डेटा विभिन्न लंबाई का हो सकता है। निर्देश सेट जो बाइट एड्रेसिंग का समर्थन करते हैं, उन इकाइयों में डेटा तक पहुँचने का समर्थन करते हैं जो वर्ड की लंबाई से कम हैं। इंटेल 8008 जैसा आठ-बिट प्रोसेसर आठ बिट्स को एड्रेसिंग करता है,| किंतु चूंकि यह संचायक और अन्य रजिस्टरों की पूरी चौड़ाई है, इसे या तो बाइट-एड्रेसेबल या वर्ड-एड्रेसेबल माना जा सकता है। 32-बिट x86 प्रोसेसर, जो 8-बिट यूनिट में मेमोरी को एड्रेसिंग करते हैं, किंतु 32-बिट सामान्य-उद्देश्य रजिस्टर हैं और 32-बिट आइटम पर निर्देश के साथ काम कर सकते हैं, बाइट-एड्रेसेबल हैं।

वर्ड एड्रेसिंग का लाभ यह है कि बिट्स की समान संख्या में अधिक मेमोरी को एड्रेसिंग किया जा सकता है। आईबीएम 7094 में 15-बिट एड्रेसिंग हैं, इसलिए यह 36 बिट्स के 32,768 वर्डों को एड्रेसिंग कर सकता है। मशीनों को अधिकांशतः एड्रेसेबल मेमोरी के पूर्ण पूरक के साथ बनाया गया था। 6 बिट्स के 32,768 बाइट्स को एड्रेसिंग करना वैज्ञानिक और इंजीनियरिंग उपयोगकर्ताओं के लिए बहुत कम उपयोगी होता है या 32-बिट x86 प्रोसेसर पर विचार करें। उनके 32-बिट रैखिक एड्रेसिंग 4 बिलियन विभिन्न मदों को एड्रेसिंग कर सकते हैं। वर्ड एड्रेसिंग का उपयोग करते हुए, 32-बिट प्रोसेसर 4 गिगावर्ड्स को एड्रेसिंग कर सकता है; या आधुनिक 8-बिट बाइट का उपयोग करते हुए 16 गीगाबाइट हो जाता है। यदि 386 और उसके उत्तराधिकारियों ने वर्डों को एड्रेसिंग किया होता, तो वैज्ञानिक, इंजीनियर और गेमर्स सभी 32-बिट मशीनों पर 4 गुना बड़े प्रोग्राम चला सकते थे। चूंकि, वर्ड प्रोसेसिंग, रेंडरिंग एचटीएमएल, और अन्य सभी टेक्स्ट अनुप्रयोग अधिक धीमी गति से चलते है |

जब कंप्यूटर इतने महंगे थे कि वे केवल या मुख्य रूप से विज्ञान और इंजीनियरिंग के लिए उपयोग किए जाते थे,तब वर्ड एड्रेसिंग करना स्पष्ट विधि थी। जैसे ही टेक्स्ट को संभालने के लिए कंप्यूटर का उपयोग करना निवेश प्रभावी हो गया, हार्डवेयर डिजाइनर बाइट एड्रेसिंग में चले जाते है।

यह बताने के लिए कि बाइट एड्रेसिंग क्यों उपयोगी है, आईबीएम 7094 पर विचार करें, जो वर्ड-एड्रेसेबल है और इसमें बाइट की कोई अवधारणा नहीं है। इसमें 36-बिट वर्ड हैं और इसके छह-बिट वर्ण कोड को छह से वर्ड में संग्रहीत करता है। स्ट्रिंग में 16 वें वर्ण को बदलने के लिए, कार्यक्रम को यह निर्धारित करना होगा कि यह स्ट्रिंग में तीसरे वर्ड का चौथा वर्ण है,| तीसरे वर्ड को प्राप्त करें, मास्क (कंप्यूटिंग) चौथे वर्ण के पुराने मान को धारण किए गए मान से बाहर करें। रजिस्टर, थोड़ा सा या नए में, और फिर संशोधित वर्ड को वापस संग्रहित करें। कम से कम छह मशीन निर्देश सामान्यतः, इन्हें सबरूटीन के लिए रवाना किया जाता है, इसलिए प्रत्येक संग्रहित या एक ही चरित्र के लाने में सबरूटीन को बुलाने और वापस लौटने का ओवरहेड सम्मिलित होता है। बाइट एड्रेसिंग के साथ, जिसे निर्देश में प्राप्त किया जा सकता है: इस कैरेक्टर कोड को उस बाइट एड्रेस पर संग्रहित करें। टेक्स्ट प्रोग्राम लिखने में आसान होते हैं, वे छोटे होते हैं, और तेजी से चलते हैं।

संकर प्रणाली
वर्ड संबोधन वाली कुछ प्रणालियाँ, जैसे कि पीडीपी-10|पीडीपी-6/10 और जीई-600 श्रृंखला|GE-600/ हनीवेल 6000 श्रृंखला सारणी, में उत्तम विधि से बाइट्स तक पहुँचने के लिए विशेष तंत्र हैं।

पीडीपी-6/10 पर, विशेष निर्देश बाइट सूचक पर संचालित होते हैं | जिसमें वर्ड पता, थोड़ा ऑफसेट और थोड़ी चौड़ाई सम्मिलित होती है। {{Mono|LDB}डीबी}}/DPB निर्देश बाइट लोड या संग्रहीत करते है | आईबीपी निर्देश ने बाइट पॉइंटर को बढ़ाते है, और आईएलडीबी/आईडीपीबी निर्देशों ने बाइट पॉइंटर को बढ़ाया और फिर अगले बाइट को लोड या संग्रहित किया जाता है। ये निर्देश इच्छानुसार-चौड़ाई वाले बिट फ़ील्ड पर काम कर सकते हैं। कार्यक्रमों ने इस लचीलेपन का लाभ उठाया: जिन लोगों को लोअरकेस अक्षरों की आवश्यकता नहीं थी, वे छह-बिट वर्ण कोड के सीमित वर्ण सेट का उपयोग करते थे। सबसे अधिक उपयोग किया जाने वाला 7-बिट एएससीआईआई, अप्रयुक्त बिट के साथ वर्ड में 5 पैक किया गया; और C (प्रोग्रामिंग लैंग्वेज) कार्यान्वयन में 9-बिट बाइट्स का उपयोग किया गया क्योंकि C को बाइट-एड्रेसेबल होने के लिए सभी मेमोरी की आवश्यकता होती है।

GE/हनीवेल मशीनों पर, अधिकांश निर्देश प्रकारों पर विशेष एड्रेसिंग मोड का उपयोग किया जा सकता है, और बाइट पॉइंटर पर संचालित किया जा सकता है जो 6-बिट या 9-बिट बाइट्स पर काम कर सकता है।

इनमें से किसी भी मशीन में मूल रूप से बाइट्स के लिए यादृच्छिक अभिगम के लिए प्रत्यक्ष मशीन समर्थन नहीं था; बाइट पॉइंटर को बाइट से पहले या बाद में n बाइट्स को संकेत करने के लिए समायोजित करता है |, जिस पर वर्तमान में कई निर्देशों के अनुक्रम की आवश्यकता होती है। KL10 पीडीपी-10 मॉडल ने बढ़ाया आईबीपी एडजस्ट बाइट पॉइंटर इंस्ट्रक्शन बनने का निर्देश, एडीजेबीपी, जो बाइट सूचक को बाइट्स की इच्छानुसार संख्या से समायोजित कर सकता है।

यह भी देखें

 * डेटा संरचना संरेखण
 * अंतहीनता