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

From Vigyanwiki
Revision as of 12:31, 26 April 2023 by alpha>Indicwiki (Created page with "कम्प्यूटिंग में, डेटा डिस्क्रिप्टर एक संरचना है जिसमें जानकारी...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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

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

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

उदाहरण

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

byte offset +0 +1 +2 +3
0 descriptor type string type (res) flags
4 maximum string length
  • 'desc प्रकार' 2 है यह इंगित करने के लिए कि यह एक सरणी या संरचना वर्णनकर्ता के बजाय एक तत्व वर्णनकर्ता है।
  • 'स्ट्रिंग प्रकार' इंगित करता है कि यह एक वर्ण या बिट स्ट्रिंग है, अलग-अलग या गैर-भिन्न लंबाई के साथ। 2 एक गैर भिन्न (निश्चित-लंबाई) वर्ण स्ट्रिंग को इंगित करता है।
  • '(res)' एक आरक्षित बाइट है जिसका उपयोग कैरेक्टर स्ट्रिंग्स के लिए नहीं किया जाता है।
  • 'झंडे' स्ट्रिंग, EBCDIC या एएससीआईआई, और अलग-अलग तारों की लंबाई के एन्कोडिंग को इंगित करते हैं।
  • 'अधिकतम स्ट्रिंग लंबाई' अलग-अलग स्ट्रिंग्स के लिए स्ट्रिंग की वास्तविक लंबाई है, या अलग-अलग स्ट्रिंग्स के लिए अधिकतम लंबाई है।

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

<पूर्व> dcl 1 सरणी आधारित संरेखित, 2 नोड_टाइप बिट (9) असंरेखित, 2 आरक्षित बिट(34) असंरेखित, 2 number_of_dimensions फिक्स्ड(7) असंरेखित, 2 अपने_संख्या_के_आयाम तय (7) असंरेखित, 2 तत्व_सीमा निश्चित (3) असंरेखित, 2 size_units फिक्स्ड(3) असंरेखित, 2 ऑफसेट_यूनिट तय (3) असंरेखित, 2 इंटरलीव्ड बिट (1) असंरेखित, 2 c_element_size फिक्स्ड (24), 2 c_element_size_bits निश्चित (24), 2 c_virtual_origin निश्चित (24), 2 एलिमेंट_साइज़ पीटीआर असंरेखित, 2 element_size_bits ptr असंरेखित, 2 virtual_origin ptr असंरेखित, 2 symtab_virtual_origin ptr असंरेखित, 2 symtab_element_size ptr असंरेखित, 2 सीमाएँ ptr असंरेखित, 2 एलिमेंट_डिस्क्रिप्टर पीटीआर असंरेखित;

dcl 1 बाउंड आधारित संरेखित, 2 नोड_टाइप बिट (9), 2 c_lower फिक्स्ड (24), 2 सी_अपर फिक्स्ड (24), 2 c_multiplier निश्चित (24), 2 c_desc_multiplier निश्चित (24), 2 निचला ptr असंरेखित, 2 ऊपरी ptr असंरेखित, 2 गुणक ptr असंरेखित, 2 desc_multiplier ptr असंरेखित, 2 symtab_lower ptr असंरेखित, 2 symtab_upper ptr असंरेखित, 2 symtab_multiplier ptr असंरेखित, 2 अगला ptr असंरेखित; </पूर्व>

यह भी देखें

संदर्भ

  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.