कार्यक्रम गणक

From Vigyanwiki
Revision as of 05:06, 19 December 2022 by alpha>Indicwiki (Created page with "{{Short description|Processor register that indicates where a computer is in its program sequence}} {{Use dmy dates|date=February 2020|cs1-dates=y}} File:IBM 701console.jpg|...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

आईबीएम 701 कंप्यूटर का फ्रंट पैनल 1952 में पेश किया गया था। बीच में रोशनी विभिन्न रजिस्टरों की सामग्री प्रदर्शित करती है। निर्देश काउंटर निचले बाएँ पर है।

प्रोग्राम काउंटर (पीसी), जिसे आमतौर पर इंटेल x86 और इटेनियम माइक्रोप्रोसेसरों में निर्देश सूचक (आईपी) कहा जाता है, और कभी-कभी निर्देश पता रजिस्टर (आईएआर) कहा जाता है,[1]निर्देश काउंटर,[2]या निर्देश अनुक्रमक का सिर्फ एक हिस्सा,[3]एक प्रोसेसर रजिस्टर है जो इंगित करता है कि कंप्यूटर अपने कंप्यूटर प्रोग्राम अनुक्रम में कहाँ है।[nb 1]

आमतौर पर, पीसी को एक निर्देश (कंप्यूटर विज्ञान) प्राप्त करने के बाद बढ़ाया जाता है, और अगले निर्देश (पॉइंटर (कंप्यूटर प्रोग्रामिंग)) का मेमोरी पता रखता है जिसे निष्पादित किया जाएगा।[4][nb 2] प्रोसेसर आमतौर पर स्मृति से क्रमिक रूप से निर्देश प्राप्त करते हैं, लेकिन नियंत्रण स्थानांतरण निर्देश पीसी में एक नया मान रखकर अनुक्रम को बदल देते हैं। इनमें ब्रांच (कंप्यूटर साइंस) (कभी-कभी जंप कहा जाता है), सबरूटीन कॉल और वापसी कथन शामिल हैं। एक हस्तांतरण जो कुछ दावे की सच्चाई पर सशर्त है, कंप्यूटर को अलग-अलग परिस्थितियों में एक अलग क्रम का पालन करने देता है।

एक शाखा प्रदान करती है कि अगला निर्देश स्मृति में कहीं और से प्राप्त किया जाता है। एक सबरूटीन कॉल न केवल शाखाएं बल्कि पीसी की पूर्ववर्ती सामग्री को कहीं सहेजती है। एक वापसी पीसी की सहेजी गई सामग्री को पुनः प्राप्त करती है और इसे पीसी में वापस रखती है, सबरूटीन कॉल के बाद निर्देश के साथ अनुक्रमिक निष्पादन को फिर से शुरू करती है।

हार्डवेयर कार्यान्वयन

एक साधारण सेंट्रल प्रोसेसिंग यूनिट (सीपीयू) में, पीसी एक काउंटर (डिजिटल) है (जो शब्द प्रोग्राम काउंटर का मूल है) जो कई हार्डवेयर प्रोसेसर रजिस्टरों में से एक हो सकता है। निर्देश चक्र[6]एक लाने के साथ शुरू होता है, जिसमें सीपीयू मेमोरी में भेजने के लिए पता बस पर पीसी का मान रखता है। मेमोरी उस मेमोरी लोकेशन की सामग्री को बस (कंप्यूटिंग) पर भेजकर प्रतिक्रिया देती है। (यह संग्रहीत प्रोग्राम कंप्यूटर मॉडल है, जिसमें एकल मेमोरी स्पेस में निष्पादन योग्य निर्देश और साधारण डेटा दोनों होते हैं।[7] प्राप्त करने के बाद, सीपीयू निष्पादन के लिए आगे बढ़ता है, प्राप्त की गई मेमोरी सामग्री के आधार पर कुछ कार्रवाई करता है। इस चक्र में किसी बिंदु पर, पीसी को संशोधित किया जाएगा ताकि निष्पादित किया जाने वाला अगला निर्देश एक अलग हो (आमतौर पर, बढ़ा हुआ ताकि अगला निर्देश वर्तमान निर्देश के अंतिम स्मृति स्थान के तुरंत बाद स्मृति पते पर शुरू हो) .

अन्य प्रोसेसर रजिस्टरों की तरह, पीसी बाइनरी लैच का एक बैंक हो सकता है, प्रत्येक पीसी के मूल्य के एक बिट का प्रतिनिधित्व करता है।[8]बिट्स की संख्या (पीसी की चौड़ाई) प्रोसेसर आर्किटेक्चर से संबंधित है। उदाहरण के लिए, एक "32-बिट" सीपीयू 2 को संबोधित करने में सक्षम होने के लिए 32 बिट्स का उपयोग कर सकता है32 मेमोरी की इकाइयाँ। कुछ प्रोसेसरों पर, प्रोग्राम काउंटर की चौड़ाई एड्रेसेबल मेमोरी पर निर्भर करती है; उदाहरण के लिए, कुछ एवीआर नियंत्रकों के पास एक पीसी होता है जो 12 बिट्स के बाद चारों ओर लपेटता है।[9]

यदि पीसी एक बाइनरी काउंटर है, तो इसके काउंट यूपी इनपुट पर एक पल्स लागू होने पर यह बढ़ सकता है, या सीपीयू कुछ अन्य मूल्य की गणना कर सकता है और इसे अपने लोड इनपुट में पल्स द्वारा पीसी में लोड कर सकता है।[10]

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

मशीन आर्किटेक्चर में परिणाम

एक पीसी का उपयोग जो सामान्य रूप से बढ़ता है, यह मानता है कि कंप्यूटर जो करता है वह आमतौर पर निर्देशों के रैखिक अनुक्रम को निष्पादित करता है। ऐसा पीसी वॉन न्यूमैन वास्तुकला के लिए केंद्रीय है। इस प्रकार प्रोग्रामर एल्गोरिदम के लिए भी अनुक्रमिक नियंत्रण प्रवाह लिखते हैं जिन्हें अनुक्रमिक नहीं होना चाहिए। परिणामी "वॉन न्यूमैन अड़चन" ने समानांतर कंप्यूटिंग में अनुसंधान का नेतृत्व किया,[11]गैर-वॉन न्यूमैन या डाटा प्रवाह मॉडल सहित जो पीसी का उपयोग नहीं करते; उदाहरण के लिए, अनुक्रमिक चरणों को निर्दिष्ट करने के बजाय, उच्च-स्तरीय प्रोग्रामर वांछित कार्यात्मक प्रोग्रामिंग निर्दिष्ट कर सकता है और निम्न-स्तरीय प्रोग्रामर संयोजन तर्क का उपयोग करके इसे निर्दिष्ट कर सकता है।

इस शोध से पारंपरिक, पीसी-आधारित, सीपीयू को तेजी से चलाने के तरीके भी सामने आए, जिनमें शामिल हैं:

उच्च स्तरीय प्रोग्रामिंग में परिणाम

आधुनिक उच्च-स्तरीय प्रोग्रामिंग भाषाएं अभी भी अनुक्रमिक-निष्पादन मॉडल का पालन करती हैं और वास्तव में, प्रोग्रामिंग त्रुटियों की पहचान करने का एक सामान्य तरीका "प्रक्रिया निष्पादन" है जिसमें प्रोग्रामर की उंगली एक पीसी के रूप में निष्पादन के बिंदु की पहचान करती है। उच्च-स्तरीय भाषा अनिवार्य रूप से वर्चुअल मशीन की मशीनी भाषा है,[12]हार्डवेयर के रूप में निर्मित होने के लिए बहुत जटिल है लेकिन इसके बजाय सॉफ्टवेयर द्वारा नकल या दुभाषिया (कंप्यूटिंग)

हालाँकि, नए प्रोग्रामिंग मॉडल अनुक्रमिक-निष्पादन प्रोग्रामिंग को पार करते हैं:

  • थ्रेड (कंप्यूटिंग) | मल्टी-थ्रेडेड प्रोग्राम लिखते समय, प्रोग्रामर प्रत्येक थ्रेड को निर्देशों के अनुक्रम के रूप में अन्य थ्रेड्स में निर्देशों के सापेक्ष किसी भी निर्देश के समय को निर्दिष्ट किए बिना लिख ​​सकता है।
  • घटना-संचालित प्रोग्रामिंग में, प्रोग्रामर प्रोग्राम के लिए समग्र अनुक्रम निर्दिष्ट किए बिना ईवेंट (कंप्यूटिंग) पर प्रतिक्रिया देने के लिए निर्देशों का क्रम लिख सकता है।
  • डेटाफ्लो प्रोग्रामिंग में, प्रोग्रामर कंप्यूटिंग पाइपलाइन प्रोग्रामिंग के प्रत्येक सेक्शन को अन्य सेक्शन के सापेक्ष समय निर्दिष्ट किए बिना लिख ​​सकता है।

प्रतीक

सभा की भाषा प्रोग्राम में प्रोग्राम काउंटर के प्रतीक के लिए विक्रेता विभिन्न वर्णों का उपयोग करते हैं। जबकि Intel, Zilog, Texas Instruments, Toshiba, NEC, Siemens और AMD प्रोसेसर प्रलेखन में $ वर्ण का उपयोग प्रचलित है, Motorola, Rockwell सेमीकंडक्टर, माइक्रोचिप प्रौद्योगिकी और Hitachi इसके बजाय * वर्ण का उपयोग करते हैं,[9]जबकि एसजीएस-थॉमसन माइक्रोइलेक्ट्रॉनिक पीसी का उपयोग करता है।[9]


यह भी देखें

टिप्पणियाँ

  1. For modern processors, the concept of "where it is in its sequence" is too simplistic, as instruction-level parallelism and out-of-order execution may occur.
  2. In a processor where the incrementation precedes the fetch, the PC points to the current instruction being executed. In some processors, the PC points some distance beyond the current instruction; for instance, in the ARM7, the value of PC visible to the programmer points beyond the current instruction and beyond the delay slot.[5]


इस पेज में लापता आंतरिक लिंक की सूची

  • सूचक (कंप्यूटर प्रोग्रामिंग)
  • स्मृति पता
  • वॉन न्यूमैन टोंटी
  • बहाव को काबू करें
  • घटना (कंप्यूटिंग)
  • रॉकवेल सेमीकंडक्टर
  • निर्देश निर्धारण

संदर्भ

  1. Mead, Carver; Conway, Lynn (1980). Introduction to VLSI Systems. Reading, USA: Addison-Wesley. ISBN 0-201-04358-0.
  2. Principles of Operation, Type 701 and Associated Equipment (PDF). IBM. 1953.
  3. Harry Katzan (1971), Computer Organization and the System/370, Van Nostrand Reinhold Company, New York, USA, LCCCN 72-153191
  4. Silberschatz, Abraham; Gagne, Greg; Galvin, Peter B. (April 2018). Operating System Concepts. United States: Wiley. pp. 27, G-29. ISBN 978-1-119-32091-3.
  5. "ARM Developer Suite, Assembler Guide. Version 1.2". ARM Limited. 2001. Retrieved 2019-10-18.
  6. John L. Hennessy and David A. Patterson (1990), Computer Architecture: a quantitative approach, Morgan Kaufmann Publishers, Palo Alto, USA, ISBN 1-55860-069-8
  7. B. Randall (1982), The Origins of Digital Computers, Springer-Verlag, Berlin, D
  8. C. Gordon Bell and Allen Newell (1971), Computer Structures: Readings and Examples, McGraw-Hill Book Company, New York, USA
  9. 9.0 9.1 9.2 Arnold, Alfred (2020) [1996, 1989]. "E. Predefined Symbols". Macro Assembler AS – User's Manual. V1.42. Translated by Arnold, Alfred; Hilse, Stefan; Kanthak, Stephan; Sellke, Oliver; De Tomasi, Vittorio. p. Table E.3: Predefined Symbols – Part 3. Archived from the original on 2020-02-28. Retrieved 2020-02-28. 3.2.12. WRAPMODE […] AS will assume that the processor's program counter does not have the full length of 16 bits given by the architecture, but instead a length that is exactly sufficient to address the internal ROM. For example, in case of the AT90S8515, this means 12 bits, corresponding to 4 Kwords or 8 Kbytes. This assumption allows relative branches from the ROM's beginning to the end and vice versa which would result in an out-of-branch error when using strict arithmetics. Here, they work because the carry bits resulting from the target address computation are discarded. […] In case of the abovementioned AT90S8515, this option is even necessary because it is the only way to perform a direct jump through the complete address space […]
  10. Walker, B. S. (1967). Introduction to Computer Engineering. London, UK: University of London Press. ISBN 0-340-06831-0.
  11. F. B. Chambers, D. A. Duce and G. P. Jones (1984), Distributed Computing, Academic Press, Orlando, USA, ISBN 0-12-167350-2
  12. Douglas Hofstadter (1980), Gödel, Escher, Bach: an eternal golden braid, Penguin Books, Harmondsworth, UK, ISBN 0-14-005579-7

श्रेणी: नियंत्रण प्रवाह श्रेणी: सेंट्रल प्रोसेसिंग यूनिट श्रेणी:डिजिटल रजिस्टर