128-बिट कंप्यूटिंग

From alpha
Jump to navigation Jump to search

कंप्यूटर आर्किटेक्चर में, 128-बिट पूर्णांक, मेमोरी एड्रेस, या अन्य डेटा इकाइयां वे हैं जो 128 बिट (16 octets) आयाम हैं। इसके अलावा, 128-बिट सेंट्रल प्रोसेसिंग यूनिट (सीपीयू) और अरिथमेटिक लॉजिक यूनिट (ALU) आर्किटेक्चर वे हैं जो रजिस्टर पर आधारित हैं, एड्रेस बसes, या डेटा बस उस आकार के।

सामान्य होम कंप्यूटिंग और गेमिंग उपयोगिता 8-बिट कंप्यूटिंग पर उभरी|8-बिट—लेकिन 1-बिट कंप्यूटिंग पर नहीं|1-बिट या 4-बिट कंप्यूटिंग|4-बिट-शब्द आकार, 2 के रूप में8=256 वर्ड (कंप्यूटर आर्किटेक्चर), डेटा की एक प्राकृतिक इकाई, संभव हो गई। इस प्रकार, शुरुआती 8-बिट सेंट्रल प्रोसेसिंग यूनिट (ज़िलॉग Z80, एमओएस टेक्नोलॉजी 6502, इंटेल 8088, कमोडोर पीईटी द्वारा 1976-1981 में पेश की गई, टीआरएस-80, ऐप्पल II श्रृंखला और आईबीएम पर्सनल कंप्यूटर) ने व्यक्तिगत कंप्यूटिंग के युग का उद्घाटन किया। कई 16-बिट कंप्यूटिंग|16-बिट सीपीयू 1970 के दशक के मध्य में पहले से ही मौजूद थे। अगले 30 वर्षों में, क्रमशः 16-बिट कंप्यूटिंग|16-बिट, 32-बिट कंप्यूटिंग|32-बिट और 64-बिट कंप्यूटिंग|64-बिट कंप्यूटिंग की अनुमति दी गई, 216=65,536 अद्वितीय शब्द, 232=4,294,967,296 अद्वितीय शब्द और 264=18,446,744,073,709,551,615 क्रमशः अद्वितीय शब्द, 64-बिट कंप्यूटिंग तक पहुंचने तक प्रत्येक चरण एक सार्थक लाभ प्रदान करता है। 64-बिट से 128-बिट कंप्यूटिंग के अतिरिक्त लाभ लुप्त हो जाते हैं क्योंकि एक रजिस्टर में संभावित मानों की संख्या लगभग 18 बड़ी संख्याओं के नामों से बढ़ जाती है (1.8×1019) से 340 बड़ी संख्याओं के नाम (3.40×1038) क्योंकि इतने सारे अद्वितीय मूल्यों का कभी भी उपयोग नहीं किया जाता है। इस प्रकार, एक रजिस्टर के साथ जो 2 संग्रहीत कर सकता है128 मान, 64-बिट कंप्यूटिंग पर कोई लाभ होम कंप्यूटिंग या गेमिंग से प्राप्त नहीं होता है। बड़े वर्ड (कंप्यूटर आर्किटेक्चर) आकार वाली केंद्रीय प्रसंस्करण इकाई को भी अधिक सर्किटरी की आवश्यकता होती है, भौतिक रूप से बड़ी होती है, अधिक शक्ति की आवश्यकता होती है और अधिक गर्मी उत्पन्न होती है। इस प्रकार, वर्तमान में 128-बिट पूर्णांक या पते पर काम करने के लिए निर्मित सामान्य-उद्देश्य सीपीयू | सामान्य-उद्देश्य प्रोसेसर का कोई मुख्यधारा का इतिहास नहीं है, हालांकि कई प्रोसेसर के पास डेटा के 128-बिट खंड पर काम करने के विशेष तरीके हैं, और हैं में दिया § History.

प्रतिनिधित्व

128-बिट बाइट एड्रेसिंग वाला एक प्रोसेसर सीधे 2 तक एड्रेस कर सकता है128(ओवर) 3.40×1038) बाइट्स, जो 2018 तक पृथ्वी पर कैप्चर किए गए, बनाए गए या दोहराए गए कुल डेटा से काफी अधिक होगा, जिसका अनुमान लगभग 33 ज़ेटाबाइट्स (2 से अधिक) है74बाइट्स).[1] एक 128-बिट रजिस्टर 2 स्टोर कर सकता है128 (3.40 × 10 से अधिक)38) विभिन्न मान। 128 बिट्स में संग्रहीत किए जा सकने वाले पूर्णांक मानों की सीमा पूर्णांक (कंप्यूटर विज्ञान)#मूल्य और प्रयुक्त प्रतिनिधित्व पर निर्भर करती है। दो सबसे आम अभ्यावेदन के साथ, सीमा 0 से 340 है,​282,​366,​920,​938,​463,​463,​374,​607,​431,​768,​211,​455 (2128 - 1) एक (हस्ताक्षरित) बाइनरी संख्या के रूप में प्रतिनिधित्व के लिए, और -170,​141,​183,​460,​469,​231,​731,​687,​303,​715,​884,​105,​728 (−2127) से 170 तक,​141,​183,​460,​469,​231,​731,​687,​303,​715,​884,​105,​727 (2127 - 1) दो के पूरक के रूप में प्रतिनिधित्व के लिए।

चौगुनी-परिशुद्धता फ़्लोटिंग-पॉइंट प्रारूप (128 बिट्स) फ़्लोटिंग-पॉइंट अंकगणित | फ़्लोटिंग-पॉइंट नंबर 113-बिट फिक्स्ड-पॉइंट अंकगणित | फिक्स्ड-पॉइंट नंबर या पूर्णांक (कंप्यूटर विज्ञान) को महत्वपूर्ण आंकड़े खोए बिना सटीक रूप से संग्रहीत कर सकते हैं (इस प्रकार 64-बिट) विशेष रूप से पूर्णांक)। चौगुनी परिशुद्धता वाली फ़्लोट्स कम से कम माइक्रोमीटर परिशुद्धता के साथ अवलोकन योग्य ब्रह्मांड में किसी भी स्थिति का प्रतिनिधित्व कर सकती हैं।[citation needed]

दशमलव128 फ़्लोटिंग-पॉइंट संख्याएँ 34 महत्वपूर्ण अंकों तक की संख्याओं का प्रतिनिधित्व कर सकती हैं।

इतिहास

1976 में शोधकर्ताओं द्वारा 128-बिट बहुतुलनात्मक का वर्णन किया गया था।[2] आईबीएम सिस्टम/360 मॉडल 85,[3] और आईबीएम सिस्टम/370 और इसके उत्तराधिकारी, 128-बिट फ़्लोटिंग-पॉइंट अंकगणित का समर्थन करते हैं।

सीमेंस 7.700 और 7.500 श्रृंखला मेनफ्रेम और उनके उत्तराधिकारी 128-बिट तैरनेवाला स्थल अंकगणित का समर्थन करते हैं।[4] अधिकांश आधुनिक सीपीयू में सिंगल इंस्ट्रक्शन, मल्टीपल डेटा (SIMD) इंस्ट्रक्शन सेट (स्ट्रीमिंग SIMD एक्सटेंशन, AltiVec आदि) की सुविधा होती है, जहां 128-बिट वेक्टर रजिस्टर का उपयोग कई छोटी संख्याओं को संग्रहीत करने के लिए किया जाता है, जैसे कि चार 32-बिट फ़्लोटिंग-पॉइंट नंबर। फिर एक एकल निर्देश इन सभी मानों पर समानांतर रूप से कार्य कर सकता है। हालाँकि, ये प्रोसेसर 128 बाइनरी अंकों की लंबाई वाले व्यक्तिगत नंबरों पर काम नहीं करते हैं; केवल उनके वेक्टर रजिस्टरों का आकार 128 बिट्स है।

DEC VAX 128-बिट पूर्णांक ('O' या ऑक्टावर्ड) और 128-बिट फ्लोटिंग-पॉइंट ('H-फ्लोट' या HFLOAT) डेटाटाइप पर संचालन का समर्थन करता है। ऐसे परिचालनों के लिए समर्थन एक मानक सुविधा होने के बजाय एक अपग्रेड विकल्प था। चूँकि VAX के रजिस्टर 32 बिट चौड़े थे, 128-बिट ऑपरेशन में मेमोरी में लगातार चार रजिस्टर या चार लॉन्गवर्ड का उपयोग किया जाता था।

ICL 2900 सीरीज़ ने 128-बिट संचायक प्रदान किया, और इसके निर्देश सेट में 128-बिट फ़्लोटिंग-पॉइंट और पैक्ड दशमलव अंकगणित शामिल थे।

128-बिट मल्टीमीडिया एक्सटेंशन वाला एक सीपीयू 1999 में शोधकर्ताओं द्वारा डिजाइन किया गया था।[5] वीडियो गेम कंसोल की छठी पीढ़ी में, कलाकारों का सपना और प्लेस्टेशन 2 ने अपनी क्षमता का वर्णन करने के लिए अपने विपणन में 128-बिट शब्द का उपयोग किया। प्लेस्टेशन 2 के सीपीयू में 128-बिट एकल निर्देश, एकाधिक डेटा क्षमताएं थीं।[6][7] कोई भी कंसोल 128-बिट एड्रेसिंग या 128-बिट पूर्णांक अंकगणित का समर्थन नहीं करता है।

आधुनिक ग्राफ़िक्स प्रोसेसिंग युनिट (जीपीयू) चिप्स 128-बिट बस में डेटा संचालित कर सकते हैं।[8]


हार्डवेयर

2016 के RISC-वी ी आईएसए विनिर्देश में आर्किटेक्चर के 128-बिट संस्करण के लिए आरक्षण शामिल है, लेकिन विवरण जानबूझकर अपरिभाषित हैं, क्योंकि इतने बड़े शब्द आकार के साथ अभी भी बहुत कम व्यावहारिक अनुभव है।[9]


सॉफ़्टवेयर

उसी तरह जैसे संकलक अनुकरण करते हैं। 64 बिट से कम रजिस्टर आकार वाले आर्किटेक्चर पर 64-बिट पूर्णांक अंकगणित, कुछ कंपाइलर 128-बिट पूर्णांक अंकगणित का भी समर्थन करते हैं। उदाहरण के लिए, जीएनयू कंपाइलर संग्रह 4.6 और बाद में 128-बिट पूर्णांक प्रकार है __int128 कुछ आर्किटेक्चर के लिए.[10] मैक्रो होने पर जीसीसी और संगत कंपाइलर 128-बिट अंकगणित की उपस्थिति का संकेत देते हैं __SIZEOF_INT128__ परिभाषित किया गया।[11] C प्रोग्रामिंग भाषा के लिए, 128-बिट समर्थन वैकल्पिक है, उदाहरण के लिए के माध्यम से int128_t प्रकार, या इसे कंपाइलर-विशिष्ट एक्सटेंशन द्वारा कार्यान्वित किया जा सकता है। रस्ट (प्रोग्रामिंग भाषा) प्रोग्रामिंग भाषा में 128-बिट पूर्णांक (मूल रूप से एलएलवीएम के माध्यम से) के लिए अंतर्निहित समर्थन है, जो सभी प्लेटफार्मों पर लागू किया गया है।[12] सी कंपाइलर द्वारा प्रदान किया गया 128-बिट प्रकार पर्ल में उपलब्ध हो सकता है Math::Int128 मापांक।[13]


उपयोग

  • सार्वभौमिक रूप से विशिष्ट पहचानकर्ता (यूयूआईडी) में 128-बिट मान होता है।
  • IPv6 पतों की 128-बिट श्रेणी के बीच कंप्यूटर नेटवर्क ट्रैफ़िक को रूट करता है।
  • ZFS एक 128-बिट फ़ाइल सिस्टम है।
  • 128 बिट्स सममित सिफर के लिए एक सामान्य कुंजी आकार और क्रिप्टोग्राफी में ब्लॉक सिफर के लिए एक सामान्य ब्लॉक आकार है।
  • आईबीएम मैं मशीन इंटरफ़ेस सभी पॉइंटर्स को 128-बिट के रूप में परिभाषित करता है। मशीन इंटरफ़ेस निर्देशों को आवश्यकतानुसार हार्डवेयर के वास्तविक निर्देश सेट में अनुवादित किया जाता है, जिससे सॉफ़्टवेयर को पुन: संकलित करने की आवश्यकता के बिना अंतर्निहित हार्डवेयर को बदलने की अनुमति मिलती है। पिछले हार्डवेयर में 48-बिट एड्रेसिंग कुंजी का आकार एक जटिल अनुदेश सेट कंप्यूटर इंस्ट्रक्शन सेट था, जबकि वर्तमान हार्डवेयर 64-बिट पावरपीसी/पावर आईएसए है। पावरपीसी/पावर आईएसए कार्यान्वयन में, पहले चार बाइट्स में संदर्भित ऑब्जेक्ट के प्रकार की पहचान करने के लिए उपयोग की जाने वाली जानकारी होती है, और अंतिम आठ बाइट्स को वर्चुअल मेमोरी एड्रेस के रूप में उपयोग किया जाता है।[14] शेष चार बाइट्स अप्रयुक्त हैं, और आईबीएम आई अनुप्रयोगों को भविष्य में कोड परिवर्तन की आवश्यकता के बिना 96-बिट एड्रेसिंग तक विस्तारित करने की अनुमति देगा।
  • शब्द का आकार बढ़ाने से क्रिप्टोग्राफी के अनुप्रयोगों के साथ मनमाना-सटीक अंकगणितीय गणितीय पुस्तकालयों में तेजी आ सकती है, और संभावित रूप से जटिल गणितीय प्रसंस्करण (संख्यात्मक विश्लेषण, संकेत आगे बढ़ाना , जटिल फोटो हेरफेर और ऑडियो सिग्नल प्रोसेसिंग और वीडियो प्रसंस्करण ) में उपयोग किए जाने वाले एल्गोरिदम में तेजी आ सकती है।
  • MD5 एक हैश फ़ंक्शन है जो 128-बिट हैश मान उत्पन्न करता है।
  • अपाचे एवरो डेटा फ़ाइलों के कुशल विभाजन के लिए सिंक्रनाइज़ेशन मार्कर के रूप में 128-बिट यादृच्छिक संख्या का उपयोग करता है।[15][16]


संदर्भ

  1. Reinsel, David; Gantz, John; Rydning, John (November 2018). "किनारे से कोर तक दुनिया का डिजिटलीकरण" (PDF). Seagate Technology. IDC. p. 3. Archived (PDF) from the original on 7 September 2021. Retrieved 14 September 2021.
  2. Mead, Carver A.; Pashley, Richard D.; Britton, Lee D.; Daimon, Yoshiaki T.; Sando, Stewart F. Jr. (October 1976). "128-Bit Multicomparator" (PDF). IEEE Journal of Solid-State Circuits. 11 (5): 692–695. Bibcode:1976IJSSC..11..692M. doi:10.1109/JSSC.1976.1050799. S2CID 27262034. Archived (PDF) from the original on 3 November 2018.
  3. Padegs A (1968). "Structural aspects of the System/360 Model 85, III: Extensions to floating-point architecture". IBM Systems Journal. 7: 22–29. doi:10.1147/sj.71.0022.
  4. Assembler Instructions (BS2000/OSD). 1993.
  5. Suzuoki, M.; Kutaragi, K.; Hiroi, T.; Magoshi, H.; Okamoto, S.; Oka, M.; Ohba, A.; Yamamoto, Y.; Furuhashi, M.; Tanaka, M.; Yutaka, T.; Okada, T.; Nagamatsu, M.; Urakawa, Y.; Funyu, M.; Kunimatsu, A.; Goto, H.; Hashimoto, K.; Ide, N.; Murakami, H.; Ohtaguro, Y.; Aono, A. (November 1999). "A microprocessor with a 128-bit CPU, ten floating-point MAC's, four floating-point dividers, and an MPEG-2 decoder". IEEE Journal of Solid-State Circuits. 34 (11): 1608–1618. Bibcode:1999IJSSC..34.1608S. doi:10.1109/4.799870.
  6. Hennessy, John L.; Patterson, David A. (2003). Computer Architecture: A Quantitative Approach (Third ed.). Morgan Kaufmann Publishers. ISBN 1-55860-724-2.
  7. Diefendorff, Keith (19 April 1999). "सोनी की भावनात्मक रूप से चार्ज चिप". Microprocessor Report. Microdesign Resources. 13 (5).
  8. Woligroski, Don (24 July 2006). "ग्राफ़िक्स प्रोसेसर". Tom's Hardware. Archived from the original on 11 April 2013. Retrieved 24 February 2013.
  9. Waterman, Andrew; Asanović, Krste. "The RISC-V Instruction Set Manual, Volume I: Base User-Level ISA version 2.2". University of California, Berkeley. EECS-2016-118. Retrieved 25 May 2017.
  10. "GCC 4.6 Release Series – Changes, New Features, and Fixes". Retrieved 25 July 2016.
  11. Marc Glisse (26 August 2015). "128-bit integer – nonsensical documentation?". GCC-Help. Retrieved 23 January 2020.
  12. "i128 – Rust". doc.rust-lang.org. Retrieved 25 June 2020.
  13. "Math::Int128". metacpan.org. Retrieved 25 June 2020.
  14. Frank G. Soltis (1997). Inside the AS/400, Second Edition. Duke Press. ISBN 978-1-882419-66-1.
  15. Kleppmann, Martin (24 January 2013). "Re: Synchronization Markers". Archived from the original on 27 September 2015.
  16. "Apache Avro 1.8.0 Specification". Apache Software Foundation.