डेटा डिस्क्रिप्टर

From Vigyanwiki

कम्प्यूटिंग में, डेटा डिस्क्रिप्टर एक संरचना होती है जो डेटा को वर्णित करने वाली जानकारी सम्मलित करती है।

डेटा डिस्क्रिप्टर का उपयोगसंकलक में किया जा सकता है,[1] Ada (प्रोग्रामिंग भाषा) जैसी भाषाओं में रन टाइम पर एक सॉफ्टवेयर संरचना के रूप में[2] या PL/I, या कुछ कंप्यूटरों में हार्डवेयर संरचना के रूप में भी उपयोग किया जा सकता है जैसे बरोज़ लार्ज सिस्टम्स।

डेटा डिस्क्रिप्टर सामान्यतः रनटाइम पर उपयोग किए जाते हैं, जिसे सबरूटीन्स को आर्गुमेंट जानकारी पास करनी होती है। HPओपन VMS [3] और मॉलटिक्स [4] तर्क वर्णनकर्ताओं के लिए प्रणाली-व्यापी भाषा-स्वतंत्र मानक होते हैं। डिस्क्रिप्टर उस डेटा के बारे में जानकारी को रखने के लिए भी उपयोग किए जाते हैं, जो कि रनटाइम पर पूर्ण प्रकार से जाना जाता है, जैसे डाइनामिक रूप से आवंटित एक ऐरे है।

उदाहरण

IBM एंटरप्राइज PL/I द्वारा एक चारित्र स्ट्रिंग (कंप्यूटर विज्ञान) को वर्णित करने के लिए निम्नलिखित डिस्क्रिप्टर का उपयोग किया जाता है:[5]

बाइट ऑफसेट +0 +1 +2 +3
0 वर्णनकर्ता प्रकार स्ट्रिंग प्रकार (रिज़र्व्ड) झंडे
4 अधिकतम स्ट्रिंग लंबाई
  • 'यह एक एलिमेंट डिस्क्रिप्टर है न कि एक ऐरे या स्ट्रक्चर डिस्क्रिप्टर होने के लिए 'डेस्क टाइप' 2 बताता है।
  • 'स्ट्रिंग टाइप' इसे एक चारित्र या बिट स्ट्रिंग को वर्णित करता है, जो वेयरिंग या नॉन वेयरिंग लंबाई के साथ हो सकता है। 2 एक नॉन वेयरिंग (फिक्स्ड-लेंथ) चारित्र स्ट्रिंग को दर्शाता है।
  • '(रिज़र्व्ड)' एक बाइट होता है जो चारित्र स्ट्रिंग्स के लिए उपयोग नहीं किया जाता है।
  • 'फ्लैग' स्ट्रिंग को, EBCDIC या एएससीआईआई, और अलग-अलग तारों की लंबाई के इंकोडिंग को दर्शाते हैं।
  • 'अधिकतम स्ट्रिंग लंबाई' अलग-अलग स्ट्रिंग्स के लिए स्ट्रिंग की वास्तविक लंबाई है, या अलग-अलग स्ट्रिंग्स के लिए अधिकतम लंबाई है।

यहाँ मल्टिक्स से एक ऐरे डेटा स्ट्रक्चर डिस्क्रिप्टर का स्रोत है।[6] रिभाषाएं आधार एरे जानकारी के लिए एक संरचना और प्रत्येक आयाम के लिए एक संरचना सम्मलित करती हैं। (मल्टिक्स 36-बिट वर्ड वाले सिस्टम पर चलता था)।

यह भी देखें

संदर्भ

  1. Holt, Richard C. (July 1987). "Data descriptors: a compile-time model of data and addressing". ACM Transactions on Programming Languages and Systems. 9 (3): 367–389. doi:10.1145/24039.24051.
  2. Schonberg, Ed. "Ada की तुलना C++ से की गई है". The Advantages of Ada 95. Retrieved January 15, 2013.
  3. Hewlett-Packard. "Chapter 7 OpenVMS Argument Descriptors". HP OpenVMS Systems Documentation. Retrieved July 11, 2020.
  4. Honeywell, Inc. (1979). Multics Programmers' Manual – Subsystem Writers' Guide (PDF). pp. 2–13-2–18.
  5. IBM Corporation (2006). Enterprise PL/I for z/OSProgramming Guide (PDF). p. 385.
  6. MIT/Honeywell. "array.incl.pl1". Multics/ldd/include. Retrieved January 20, 2012.