हेक्साडेसिमल शाब्दिक के लिए `0x` सम्मेलन कहाँ और कब हुआ?
1980 के दशक के प्रारंभ तक, C 0x
, हेक्साडेसिमल में व्यक्त पूर्णांक शाब्दिक को इंगित करने के लिए एक उपसर्ग के रूप में उपयोग कर रहा था , जैसे 0xCAFE
,। यह 1972 के रूप में बी में मौजूद नहीं था , हालांकि बी ने एक 0
उपसर्ग के माध्यम से ऑक्टल पूर्णांक शाब्दिक का समर्थन किया था ।
यह 0x
उपसर्ग कहाँ और कब पहली बार इस्तेमाल किया गया था ?
जवाब
यह 1972 के रूप में बी में मौजूद नहीं था, हालांकि बी ने एक 0 उपसर्ग के माध्यम से ऑक्टेल पूर्णांक शाब्दिक का समर्थन किया था।
यह सच है, लेकिन बी के पूर्ववर्ती, बीसीपीएल ने #
ओक्टाल और #x
हेक्साडेसिमल के लिए एक अंकन किया था । तो यह विचार 'एक पीढ़ी' उछल गया।
C का इतिहास बाद में फिर से जोड़े जाने वाली विशेषताओं में से एक है ... बेहतर या बदतर के लिए।
सीपीएल (कंबाइंड प्रोग्रामिंग लैंग्वेज) को कैम्ब्रिज और लंदन में सिस्टम प्रोग्रामिंग (* 1) के लिए एक सरलीकृत अल्गोल के रूप में विकसित किया गया था। यह 1965/66 में ईडीएसएसी 2, एटलस और आईबीएम 7094 के लिए लागू किया गया था।
BCPL (बेसिक CPL) था, जैसा कि नाम से पता चलता है कि CPL का सरलीकृत संस्करण, पहली बार 1967 में IBM 7094 (* 2) पर लागू किया गया था।
B फिर से एक सरलीकृत BCPL (* 3, * 4) था, जिसने 1969 में PDP-7 को फिट किया।
C को 1972 में पीडीपी -11 के लिए NB (न्यू बी) के माध्यम से विकसित किया गया था, जिसमें (बैक इन) फीचर्स थे।
सीपीएल इस्तेमाल किया #
अष्टाधारी स्थिरांक निरूपित करने के लिए। हेक्स की कोई वास्तविक आवश्यकता नहीं थी, क्योंकि सभी मशीनों के लिए इसे लागू किया गया था जिसमें शब्द आकार 3 से विभाजित किया गया था और आउटपुट के लिए 6 बिट वर्ण का उपयोग किया गया था।
BCPL समय (काफी कम) विकसित हुआ। प्रारंभ से ही #
एक अष्टाक्षर संख्या को चिह्नित करने के लिए उपयोग किया जाता था, यह जल्द ही हेक्साडेसिमल के#b
लिए बाइनरी के #xलिए और यहां तक #o
कि ऑक्टल के लिए पूरक हो गया । ये अतिरिक्त समय और कार्यान्वयन विशिष्ट थे, लेकिन कम से कम #x
एक मानक बन गया।
बी ने एक पूर्ववर्ती शून्य के पक्ष में #x
पूरे #
अंकन (* 5) के साथ फिर से गिरा दिया , पार्सर को सरल बनाया। चूंकि पीडीपी -7 3 शब्द आकार की मशीन का एक बहु था, अष्टक केवल मशीन विशिष्ट अंकन की आवश्यकता थी (* 6,7)।
C को बारी-बारी से PDP-11 के लिए विकसित किया गया था, जिसके लिए 16 बिट मशीन के रूप में, कई मशीन आश्रित स्थिरांक हेक्स में स्वाभाविक रूप से आते हैं - 32 के समूहों में 8 बिट बाइट और ASCII के विभाजन का उल्लेख नहीं करना। अब हेक्स नोटेशन को फिर से प्रस्तुत करना माना गया उपयोगी - बस इस बार एक पूर्ववर्ती शून्य के विचार के साथ रहना।
* 1 - सीपीएल वास्तव में देखने लायक है। जबकि इसके पास पहले से ही सी की मूल बातें हैं, जैसे मूल तत्व के रूप में शब्दों को इंगित करते हैं, इसमें कई विशेषताएं भी शामिल हैं जो आज तक काफी अपरंपरागत लगती हैं। उदाहरण के लिए a = bc
, वेरिएबल bc a को असाइन नहीं किया गया है, लेकिन b बार c का उत्पाद। बहु-चरित्र पहचानकर्ताओं को बड़े अक्षरों से शुरू करना था। यह बहुत पसंद किए जाने वाले ऊंट मामले का मूल भी हो सकता है।
* 2 - और एक मॉडल 35 टीटीवाई, जो उस समय, कोई घुंघराले या चौकोर ब्रेसिज़ नहीं थे, इस प्रकार डिग्राफ को जोड़ा गया था। इसी तरह की कोई बैक स्लैश नहीं है, इसलिए *
स्ट्रिंग्स में विशेष पात्रों के लिए उपयोग किया गया था।
* 3 - प्लस कुछ अजीब स्विच। अल्गोल +:=
के पास संवर्धित असाइनमेंट था, इसलिए CPL और BCPL का उपयोग किया =+
, जबकि B ने वापस स्विच किया +=
।
* 4 - शायद कुछ पीएल / मैंने जोड़ा।
* 5 - यह समान #
रूप से तुलना ऑपरेटरों के हिस्से के रूप में गिरा दिया
* 6 - यह हमेशा ध्यान में रखने योग्य है कि 8 बिट बाइट और संबंधित हेक्स नोटेशन को आईबीएम / 360 के साथ कुछ समय पहले ही पेश किया गया था।
* * - एक दिलचस्प बात यह हो सकती है कि १ ९ emb० डाटपॉइंट २२०० के लिए अपने असेंबलर में ओटीसी स्थिरांक के लिए CTC का उपयोग पूर्ववर्ती शून्य के रूप में भी किया जा सकता है । इसलिए जब मुझे कोई सीधा संबंध नहीं पता है, तो यह काफी दिलचस्प है कि वे उसी समय समाधान के साथ आए जैसे थॉम्पसन ने किया था।