अंग्रेजी विद्युतकी ड्यूस: Difference between revisions

From Vigyanwiki
Line 89: Line 89:
]
]
</pre>
</pre>
उपरोक्त प्रोग्राम में, डुप कमांड ने स्टैक के शीर्ष को डुप्लिकेट किया,
उपरोक्त प्रोग्राम में, 'डुप' निर्देश ने स्टैक के शीर्ष को अनुकृत किया,
ताकि स्टैक के शीर्ष पर मूल्य की दो प्रतियां हों।<ref name="Hamblin_1958"/>


जीआईपी (जनरल इंटरप्रिटिव प्रोग्राम) ब्रिक्स नामक कार्यक्रमों में हेरफेर करने के लिए एक नियंत्रण कार्यक्रम था। इसकी प्रमुख सेवा ड्यूस रैखिक बीजगणित पुस्तकालय में मौजूद कई सौ कार्यक्रमों को चलाने में थी। इस तरह के कार्यक्रम की तैयारी में आवश्यक ईंटों (पंच कार्डों पर) का चयन करना, उन्हें और जीआईपी को पुनरुत्पादित पंच में कॉपी करना और प्रतियों को कार्ड के डेक में इकट्ठा करना सम्मिलित है। इसके बाद, ऐसे कार्यों को करने के लिए ईंटों का उपयोग करने के लिए सरल कोडवर्ड लिखे जाएंगे: मैट्रिक्स गुणन; मैट्रिक्स उलटा; टर्म-दर-टर्म मैट्रिक्स अंकगणित (जोड़, घटाव, गुणा और भाग); एक साथ समीकरणों को हल करना; निविष्ट; और आउटपुट. कोडवर्ड में मैट्रिक्स के आयाम कभी निर्दिष्ट नहीं किए गए थे। आयाम स्वयं मैट्रिक्स से लिए गए थे, या तो डेटा कार्ड से पहले वाले कार्ड से या ड्रम पर संग्रहीत मैट्रिक्स से। इस प्रकार, कार्यक्रम पूरी तरह से सामान्य थे। एक बार लिखे जाने के बाद, ऐसा प्रोग्राम किसी भी आकार के मैट्रिक्स (निश्चित रूप से ड्रम की क्षमता तक) को संभालता है।<ref>Deuce Library Service, "DEUCE General Interpretive Programme", 2nd Ed., The English Electric Company Limited,
जिससे स्टैक के शीर्ष पर मान की दो प्रतियां उत्पन्न हों जाए।<ref name="Hamblin_1958" />
Kidsgrove, Staffs, England, c. 1963.</ref> कार्ड से मैट्रिक्स में पढ़ने, मैट्रिक्स को स्थानांतरित करने और कार्ड पर परिणामों को पंच करने के लिए एक संक्षिप्त कार्यक्रम के लिए निम्नलिखित कोडवर्ड की आवश्यकता होती है:
 
<पूर्व>
जीआईपी (जनरल इंटरप्रिटिव प्रोग्राम) ब्रिक्स नामक प्रोग्रामों के लिए एक नियंत्रण कार्यक्रम था। इसकी प्रमुख सेवा ड्यूस रैखिक बीजगणित लाइब्रेरी में उपलब्ध कई सौ प्रोग्रामों को चलाने में थी। इस तरह के कार्यक्रम की तैयारी में आवश्यक ब्रिक्स (पंच कार्डों पर) का चयन करना, उन्हें और जीआईपी को पुनरुत्पादित पंच में कॉपी करना और प्रतियों को कार्ड के डेक में इकट्ठा करना सम्मिलित है। इसके बाद, ऐसे कार्यों को करने के लिए ब्रिक्स का उपयोग करने के लिए सरल कोडवर्ड लिखे जाएंगे: आव्यूह गुणन; आव्यूह उलटा; टर्म-दर-टर्म आव्यूह अंकगणित (जोड़, घटाव, गुणा और भाग); एक साथ समीकरणों को हल करना; निविष्ट; और आउटपुट. कोडवर्ड में आव्यूह के आयाम कभी निर्दिष्ट नहीं किए गए थे। आयाम स्वयं आव्यूह से लिए गए थे, या तो डेटा कार्ड से पहले वाले कार्ड से या ड्रम पर संग्रहीत आव्यूह से। इस प्रकार, कार्यक्रम पूरी तरह से सामान्य थे। एक बार लिखे जाने के बाद, ऐसा प्रोग्राम किसी भी आकार के आव्यूह (निश्चित रूप से ड्रम की क्षमता तक) को संभालता है।<ref>Deuce Library Service, "DEUCE General Interpretive Programme", 2nd Ed., The English Electric Company Limited,
0, 0, 5, 1
Kidsgrove, Staffs, England, c. 1963.</ref> कार्ड से आव्यूह में पढ़ने, आव्यूह को स्थानांतरित करने और कार्ड पर परिणामों को पंच करने के लिए एक संक्षिप्त कार्यक्रम के लिए निम्नलिखित कोडवर्ड की आवश्यकता होती है:
5, 0, 120, 2
0,   0,   5, 1  
120, 0, 0, 3
 
</पूर्व>
5,   0, 120, 2
प्रत्येक कोडवर्ड में चौथा नंबर ब्रिक नंबर होता है। पहला कोडवर्ड निर्दिष्ट करता है कि मैट्रिक्स कार्ड से पढ़ा जाता है और ड्रम पते 5 पर संग्रहीत किया जाता है; दूसरा कोडवर्ड निर्दिष्ट करता है कि ड्रम एड्रेस 5 पर मैट्रिक्स ट्रांसपोज़ किया गया है, और परिणाम ड्रम एड्रेस 120 पर संग्रहीत है; और तीसरा पंच जो कार्डों पर परिणामित होता है।
 
120, 0,   0, 3
प्रत्येक कोडवर्ड में चौथा नंबर ब्रिक नंबर होता है। पहला कोडवर्ड निर्दिष्ट करता है कि आव्यूह कार्ड से पढ़ा जाता है और ड्रम पते 5 पर संग्रहीत किया जाता है; दूसरा कोडवर्ड निर्दिष्ट करता है कि ड्रम एड्रेस 5 पर आव्यूह ट्रांसपोज़ किया गया है, और परिणाम ड्रम एड्रेस 120 पर संग्रहीत है; और तीसरा पंच जो कार्डों पर परिणामित होता है।


एसटीएसी एक मैक्रो-असेम्बलर था। अधिकांश निर्देश स्थानांतरण के रूप में दशमलव में लिखे गए थे, जैसे 13-16, जिसका अर्थ रजिस्टर 13 में शब्द को रजिस्टर 16 में कॉपी करना है। निर्देश का स्थान निर्दिष्ट नहीं किया गया था। एसटीएसी ने डिले लाइन में एक शब्द के लिए एक निर्देश आवंटित किया, और बाइनरी निर्देश के छह घटकों की गणना की। इसने अगले निर्देश को एक ऐसे स्थान पर आवंटित किया जो इष्टतम था, यदि संभव हो तो पिछला निर्देश पूरा होते ही निष्पादित किया जाना था।
एसटीएसी एक मैक्रो-असेम्बलर था। अधिकांश निर्देश स्थानांतरण के रूप में दशमलव में लिखे गए थे, जैसे 13-16, जिसका अर्थ रजिस्टर 13 में शब्द को रजिस्टर 16 में कॉपी करना है। निर्देश का स्थान निर्दिष्ट नहीं किया गया था। एसटीएसी ने डिले लाइन में एक शब्द के लिए एक निर्देश आवंटित किया, और द्विआधारी निर्देश के छह घटकों की गणना की। इसने अगले निर्देश को एक ऐसे स्थान पर आवंटित किया जो इष्टतम था, यदि संभव हो तो पिछला निर्देश पूरा होते ही निष्पादित किया जाना था।


निम्नलिखित प्रोग्राम एक मान n में पढ़ता है, और फिर n बाइनरी पूर्णांक में पढ़ता है। यह पूर्णांक और उसके वर्ग को छिद्रित करता है। टिप्पणियाँ छोटे अक्षरों में निर्देश की व्याख्या करती हैं।
निम्नलिखित प्रोग्राम एक मान n में पढ़ता है, और फिर n द्विआधारी पूर्णांक में पढ़ता है। यह पूर्णांक और उसके वर्ग को छिद्रित करता है। टिप्पणियाँ छोटे अक्षरों में निर्देश की व्याख्या करती हैं।
<पूर्व>
<पूर्व>
1.0 12-24 कार्ड रीडर प्रारंभ करें। कार्यक्रम का स्थान 1.0 के रूप में निर्दिष्ट है।
1.0 12-24 कार्ड रीडर प्रारंभ करें। कार्यक्रम का स्थान 1.0 के रूप में निर्दिष्ट है।
Line 121: Line 122:
R1 1-1X पड़ाव; कार्यक्रम पूरा हो गया है.
R1 1-1X पड़ाव; कार्यक्रम पूरा हो गया है.
</पूर्व>
</पूर्व>
एसटीएसी निम्नलिखित निर्देश तैयार करेगा (बाइनरी प्रोग्राम के अतिरिक्त)। प्रत्येक निर्देश का मेमोरी स्थान बाईं ओर प्रदर्शित किया गया है।
एसटीएसी निम्नलिखित निर्देश तैयार करेगा (द्विआधारी प्रोग्राम के अतिरिक्त)। प्रत्येक निर्देश का मेमोरी स्थान बाईं ओर प्रदर्शित किया गया है।
<पूर्व>
<पूर्व>
1.0 12-24
1.0 12-24
Line 154: Line 155:
Deuce की प्रोग्रामिंग अन्य कंप्यूटरों से भिन्न थी। डिले लाइनओं की क्रमबद्ध प्रकृति के लिए आवश्यक है कि निर्देशों को इस तरह से आदेश दिया जाए कि जब एक निर्देश का निष्पादन पूरा हो जाए, तो अगला एक डिले लाइन से उभरने के लिए तैयार हो। एकल रजिस्टरों पर संक्रिया के लिए, अगले निर्देश का पालन करने का प्रारंभिक समय वर्तमान के बाद 64 माइक्रोसेकंड था। इस प्रकार, अनुदेश अनुक्रमिक स्थानों से निष्पादित नहीं किये गये। सामान्य तौर पर, निर्देश एक या अधिक शब्दों को स्थानांतरित कर सकते हैं। परिणामस्वरूप, प्रत्येक निर्देश अगले निर्देश का स्थान निर्दिष्ट करता है। [[इष्टतम प्रोग्रामिंग]] का मतलब था कि जैसे ही प्रत्येक निर्देश निष्पादित किया गया था, अगला एक डिले लाइन से उभर रहा था। यदि किसी निर्देश का स्थान इष्टतम नहीं है तो स्टोर में निर्देशों की स्थिति प्रदर्शन को बहुत प्रभावित कर सकती है।
Deuce की प्रोग्रामिंग अन्य कंप्यूटरों से भिन्न थी। डिले लाइनओं की क्रमबद्ध प्रकृति के लिए आवश्यक है कि निर्देशों को इस तरह से आदेश दिया जाए कि जब एक निर्देश का निष्पादन पूरा हो जाए, तो अगला एक डिले लाइन से उभरने के लिए तैयार हो। एकल रजिस्टरों पर संक्रिया के लिए, अगले निर्देश का पालन करने का प्रारंभिक समय वर्तमान के बाद 64 माइक्रोसेकंड था। इस प्रकार, अनुदेश अनुक्रमिक स्थानों से निष्पादित नहीं किये गये। सामान्य तौर पर, निर्देश एक या अधिक शब्दों को स्थानांतरित कर सकते हैं। परिणामस्वरूप, प्रत्येक निर्देश अगले निर्देश का स्थान निर्दिष्ट करता है। [[इष्टतम प्रोग्रामिंग]] का मतलब था कि जैसे ही प्रत्येक निर्देश निष्पादित किया गया था, अगला एक डिले लाइन से उभर रहा था। यदि किसी निर्देश का स्थान इष्टतम नहीं है तो स्टोर में निर्देशों की स्थिति प्रदर्शन को बहुत प्रभावित कर सकती है।


कार्ड रीडर से डेटा पढ़ना वास्तविक समय में किया गया था - प्रत्येक पंक्ति को पढ़ा जाना था क्योंकि यह बिना रुके, पढ़े गए ब्रश से गुज़रता था। इसी प्रकार कार्ड पंच के लिए; किसी विशेष पंक्ति के लिए शब्द पहले से तैयार किया गया था और उसे तब तैयार होना था जब कार्ड की दी गई पंक्ति पंच चाकू के नीचे की स्थिति में हो। पढ़ने और मुक्का मारने का सामान्य तरीका बाइनरी था। दशमलव निविष्ट और आउटपुट सॉफ्टवेयर के माध्यम से किया गया था।
कार्ड रीडर से डेटा पढ़ना वास्तविक समय में किया गया था - प्रत्येक पंक्ति को पढ़ा जाना था क्योंकि यह बिना रुके, पढ़े गए ब्रश से गुज़रता था। इसी प्रकार कार्ड पंच के लिए; किसी विशेष पंक्ति के लिए शब्द पहले से तैयार किया गया था और उसे तब तैयार होना था जब कार्ड की दी गई पंक्ति पंच चाकू के नीचे की स्थिति में हो। पढ़ने और मुक्का मारने का सामान्य तरीका द्विआधारी था। दशमलव निविष्ट और आउटपुट सॉफ्टवेयर के माध्यम से किया गया था।


हाई-स्पीड स्टोर में 32 बिट्स के चार एकल-शब्द रजिस्टर, तीन डबल-शब्द रजिस्टर और दो चौगुनी-शब्द रजिस्टर सम्मिलित थे। दोहरे और चौगुने-शब्द रजिस्टरों के प्रत्येक 32-बिट शब्द को अलग से संबोधित किया जा सकता है। उन्हें एक जोड़ी के रूप में भी एक्सेस किया जा सकता है, और - चौगुनी रजिस्टरों के मामले में - तीन या चार के समूह के रूप में। अनुदेश भंडार में बारह [[पारा विलंब रेखा|पारा डिले लाइन]]एं सम्मिलित थीं, प्रत्येक 32 शब्द थे, और 1 से 12 तक क्रमांकित थे। डिले लाइन 11 (डीएल11) चुंबकीय ड्रम और हाई-स्पीड स्टोर के बीच बफर के रूप में कार्य करती थी। एक स्थानांतरण यंत्र होने के नाते, डेटा को एक समय में एक शब्द, एक समय में शब्दों की एक जोड़ी और एक समय में 33 तक कितने भी शब्दों को स्थानांतरित किया जा सकता है। इस प्रकार, उदाहरण के लिए, ड्रम से पढ़े गए 32 शब्दों को किसी अन्य डिले लाइन में ब्लॉक के रूप में स्थानांतरित किया जा सकता है; 4 शब्दों को एक ब्लॉक के रूप में एक चौगुनी रजिस्टर से दूसरे में, या चौगुनी रजिस्टर और एक डिले लाइन के बीच स्थानांतरित किया जा सकता है - सभी एक निर्देश के साथ। विलंब पंक्ति के 32 शब्दों को एकल-लंबाई योजक (एकल निर्देश के माध्यम से) में पास करके सारांशित किया जा सकता है।<ref>" 'English Electric' D.E.U.C.E. Programming Manual", The English Electric Company Limited, May 1956, publication No. NS-y-16.</ref>
हाई-स्पीड स्टोर में 32 बिट्स के चार एकल-शब्द रजिस्टर, तीन डबल-शब्द रजिस्टर और दो चौगुनी-शब्द रजिस्टर सम्मिलित थे। दोहरे और चौगुने-शब्द रजिस्टरों के प्रत्येक 32-बिट शब्द को अलग से संबोधित किया जा सकता है। उन्हें एक जोड़ी के रूप में भी एक्सेस किया जा सकता है, और - चौगुनी रजिस्टरों के मामले में - तीन या चार के समूह के रूप में। अनुदेश भंडार में बारह [[पारा विलंब रेखा|पारा डिले लाइन]]एं सम्मिलित थीं, प्रत्येक 32 शब्द थे, और 1 से 12 तक क्रमांकित थे। डिले लाइन 11 (डीएल11) चुंबकीय ड्रम और हाई-स्पीड स्टोर के बीच बफर के रूप में कार्य करती थी। एक स्थानांतरण यंत्र होने के नाते, डेटा को एक समय में एक शब्द, एक समय में शब्दों की एक जोड़ी और एक समय में 33 तक कितने भी शब्दों को स्थानांतरित किया जा सकता है। इस प्रकार, उदाहरण के लिए, ड्रम से पढ़े गए 32 शब्दों को किसी अन्य डिले लाइन में ब्लॉक के रूप में स्थानांतरित किया जा सकता है; 4 शब्दों को एक ब्लॉक के रूप में एक चौगुनी रजिस्टर से दूसरे में, या चौगुनी रजिस्टर और एक डिले लाइन के बीच स्थानांतरित किया जा सकता है - सभी एक निर्देश के साथ। विलंब पंक्ति के 32 शब्दों को एकल-लंबाई योजक (एकल निर्देश के माध्यम से) में पास करके सारांशित किया जा सकता है।<ref>" 'English Electric' D.E.U.C.E. Programming Manual", The English Electric Company Limited, May 1956, publication No. NS-y-16.</ref>
Line 212: Line 213:
और गुणन के दौरान परिणाम निकालकर।
और गुणन के दौरान परिणाम निकालकर।
अन्य विशेष प्रभावों में एक शब्द में बिट्स की गिनती सम्मिलित है,
अन्य विशेष प्रभावों में एक शब्द में बिट्स की गिनती सम्मिलित है,
और बाइनरी कोडेड डेसीमल (बीसीडी) को बाइनरी में परिवर्तित करना।
और द्विआधारी कोडेड डेसीमल (बीसीडी) को द्विआधारी में परिवर्तित करना।
इसी प्रकार विभाजन के लिए, जिसका उपयोग किया जा सकता है
इसी प्रकार विभाजन के लिए, जिसका उपयोग किया जा सकता है
पूर्णांकों को बाइनरी कोडेड डेसीमल (बीसीडी) में परिवर्तित करना, और इसके लिए
पूर्णांकों को द्विआधारी कोडेड डेसीमल (बीसीडी) में परिवर्तित करना, और इसके लिए
पाउंड, शिलिंग और पेंस को पेंस में परिवर्तित करना।
पाउंड, शिलिंग और पेंस को पेंस में परिवर्तित करना।



Revision as of 22:43, 17 July 2023

DEUCE
Also known asDigital Electronic Universal Computing Engine
निर्माताEnglish Electric
रिलीज की तारीख1955 (1955)
बंद कर दिया1964 (1964)
इकाइयाँ भेज दी33
CPUthermionic valve-based
स्मृतिmercury delay lines
384 32-bit words (Mark I and Mark II)
608 32-bit words (Mark IIA)
भंडारण8192-word magnetic drum
प्रदर्शन2 × CRTs
पूर्ववर्तीPilot ACE

ड्यूस (डिजिटल इलेक्ट्रॉनिक यूनिवर्सल कंप्यूटिंग इंजन) यूनाइटेड किंगडम में व्यावसायिक रूप से उपलब्ध सबसे पहले कंप्यूटरों में से एक था, जिसे 1955 में अंग्रेजी इलेक्ट्रिक द्वारा बनाया गया था।[1] यह पायलट ऐस का उत्पादन संस्करण था, जो स्वयं एलन ट्यूरिंग के स्वचालित कंप्यूटिंग इंजन का कट-डाउन संस्करण था।

हार्डवेयर विवरण

ड्यूस में 1450 तापायनिक वाल्व थे, और इसकी मुख्य मेमोरी के लिए पारा मर्क्युरी डिले लाइन का उपयोग किया गया था; 12 डिले लाइनो में से प्रत्येक 32 बिट्स के 32 निर्देश या डेटा शब्द संग्रहीत कर सकती है। इसने पायलट एस की तत्कालीन उच्च 1 मेगाहर्ट्ज़ क्लॉक दर का उपयोग किया। निविष्ट/आउटपुट होलेरिथ 80-कॉलम पंच-कार्ड उपकरण के माध्यम से किया जाता था। पाठक 200 प्रति मिनट की दर से कार्ड पढ़ता था, जबकि कार्ड पंच दर 100 कार्ड प्रति मिनट थी। ड्यूस में मुख्य भंडारण के लिए 8192 शब्द का चुंबकीय ड्रम भी था। 32 शब्दों के 256 ट्रैकों में से किसी एक तक पहुंचने के लिए, ड्रम में 16 पढ़ने वाले प्रमुखों का एक समूह और 16 लिखने वाले प्रमुखों का एक समूह था, प्रत्येक समूह स्वतंत्र गतिशील भुजाओं पर था, जो प्रत्येक 16 पदों में से एक पर जाने में सक्षम था। यदि शीर्ष पहले से ही स्थिति में थे तो पहुंच का समय 15 मिलीसेकंड था; यदि सिरों को घूर्णन करना हो तो अतिरिक्त 35 मिलीसेकंड की आवश्यकता होती थी। ड्रम से पढ़ते और लिखते समय कोई घूर्णी विलंब नहीं हुआ। डेटा को ड्रम और 32-शब्द डिले लाइनों में से एक के मध्य स्थानांतरित किया गया था।

ड्यूस को छिद्रित टेप उपकरण के साथ फिट किया जा सकता है; पाठक की गति 850 अक्षर प्रति सेकंड थी, जबकि पेपर टेप आउटपुट गति 25 अक्षर प्रति सेकंड थी। न्यू साउथ वेल्स विश्वविद्यालय के ड्यूस में 1964 में एक सीमेंस M100 टेलीप्रिंटर लगा था, जो प्रति सेकंड 10 अक्षर निविष्ट/आउटपुट देता था। डेका चुंबकीय टेप इकाइयां भी संलग्न की जा सकती हैं। स्वचालित गुणक और विभाजक अतुल्यकालिक रूप से संचालित होते हैं अर्थात, जब गुणक/विभाजक इकाई संक्रिया में रहती है तो अन्य निर्देश भी निष्पादित किए जा सकते हैं। पूर्णांक संक्रिया के लिए दो अंकगणितीय इकाइयाँ प्रदान की गईं: एक 32 बिट और दूसरी 32-बिट संक्रिया और 64-बिट संक्रिया करने में सक्षम थी। लगभग 1957 से आठ रजिस्टरों पर ऑटो-इंक्रीमेंट और ऑटो-डिक्रीमेंट प्रदान किए गए थे। ऐरे अंकगणित और ऐरे डेटा स्थानांतरण की अनुमति दी गई थी। मैनचेस्टर मार्क 1 जैसे समकालीनों की तुलना में, ड्यूस लगभग दस गुना तेज था।

चौगुनी रजिस्टरों के अलग-अलग शब्द एक ऑटो-इंक्रीमेंट/डिक्रीमेंट सुविधा से युग्मित थे। उस सुविधा का उपयोग निर्देशों की गिनती और संशोधन के लिए जैसे अनुक्रमण, लूप नियंत्रण और किसी निर्देश के स्रोत या गंतव्य पता परिवर्तन के लिए किया जा सकता है।[2]

शृंखला यंत्र होने के कारण, एक रजिस्टर तक पहुंच का समय 32 माइक्रोसेकंड, एक डबल रजिस्टर तक 64 माइक्रोसेकंड और एक चौगुना रजिस्टर तक पहुँच का समय 128 माइक्रोसेकंड था। डिले लाइन के लिए यह 1024 माइक्रोसेकंड था।

निर्देश का समय था: जोड़, घटाव, तार्किक संक्रिया: 32-बिट शब्दों के लिए 64 माइक्रोसेकंड; डबल-प्रिसिजन 96 माइक्रोसेकंड; गुणा और भाग 2 मिलीसेकंड। सरणी अंकगणित और स्थानांतरण संक्रिया के लिए, 32 शब्दों के लिए प्रति शब्द समय 33 माइक्रोसेकंड था।

फ़्लोटिंग-पॉइंट संक्रिया सॉफ़्टवेयर द्वारा प्रदान किए गए थे; समय: जोड़ और घटाव के लिए 6 मिलीसेकंड, गुणन के लिए औसत 5.5 मिलीसेकंड, और भाग के लिए औसत 4.5 मिलीसेकंड।

प्रारम्भिक यंत्रों में, जब कोई संक्रिया चल रही होती थी, तो चुंबकीय ड्रम से जुड़े सभी निर्देश परस्पर जुड़े होते थे। इस प्रकार, यदि रीड हेड्स को स्थानांतरित किया गया था, तो किसी भी बाद के चुंबकीय संक्रिया जैसे ट्रैक को पढ़ना या ट्रैक लिखना, पहले पूरा होने तक आगे बढ़ने से प्रतिबंधित कर दिया गया था। लगभग 1957 से, एक नई इकाई, जिसे परिमित चुम्बकत्व कहा जाता है, उपलब्ध कराई गई थी। इस इकाई ने अनावश्यक अंतःपाशन को समाप्त कर दिया। इस प्रकार, ऐसे निर्देश को निष्पादित करना संभव था जो पठन हेड्स को स्थानांतरित करता था: यदि लेखन हेड्स को स्थानांतरित करने, या ट्रैक लिखने के निर्देश का पालन किया जाता था, तो ऐसे निर्देश इंटरलॉक नहीं होते थे, और रीड हेड्स को स्थानांतरित करने के साथ समानांतर में आगे बढ़ सकते थे।[3]

ड्यूस के अग्र पैनल में दो कैथोड रे ट्यूब डिस्प्ले थे: एक ने रजिस्टरों की वर्तमान सामग्री को प्रदर्शित किया, जबकि दूसरे ने पारा विलंब लाइन स्टोर में से किसी एक की सामग्री को प्रदर्शित किया।

लगभग 1958 से, सात अतिरिक्त विलंब लाइनें जोड़ी जा सकीं, जिससे हाई-स्पीड स्टोर के 224 और शब्द मिले। एक आइबीएम 528 संयुक्त रीडर-पंच को होलेरिथ उपकरण के स्थान पर प्रतिस्थापित किया जा सकता है, जो समान निविष्ट/आउटपुट गति देता है, इस स्थिति में यंत्र को मार्क II कहा जाता था। निविष्ट पर अक्षरांकीय डेटा का द्विआधारी-कूटन दशमलव में स्वचालित रूपांतरण प्रदान किया गया था, और सभी अस्सी कार्ड कॉलम के लिए आउटपुट पर व्युत्क्रम संक्रिया प्रदान किया गया था। इस उपकरण पर, आवश्यकता पड़ने पर रीडिंग और पंचिंग एक साथ आगे बढ़ सकती है, और इस प्रकार इसका उपयोग किसी रिकॉर्ड में पढ़ने, उसे अपडेट करने और फिर अगले रिकॉर्ड में रीडिंग के साथ-साथ एक अपडेटेड रिकॉर्ड को पंच करने के लिए किया जा सकता है। सात अतिरिक्त डिले लाइनो के साथ, ड्यूस को मार्क IIA के रूप में प्रदर्शित किया गया था।

सॉफ़्टवेयर

प्रमुख उच्च स्तरीय प्रोग्रामिंग भाषाएँ जॉर्ज,[4][5][6][7]अल्फाकोड, स्टीव, टिप, जीआईपी,[8] और एल्गोल आदि हैं।[9] असेंबलर भाषा अनुवादकों में ZP43 और स्टाक सम्मिलित थे।[10]

1957 में चार्ल्स लियोनार्ड हैम्ब्लिन द्वारा आविष्कृत, जॉर्ज वर्तमान प्रोग्रामिंग भाषाओं के सबसे निकट था।[4][5]इसमें रिवर्स पोलिश नोटेशन का उपयोग किया गया। उदाहरण के लिए, e = ay2 + by + c के मूल्यांकन हेतु,

इसे निम्न रूप में लिखा जाता था:

a y dup × × b y × + c + (e)

यहां "dup" पिछले निविष्ट की प्रतिलिपि निर्मित करता है, जो "y" का उपयोग करने के बराबर होता है।

जॉर्ज ने पुश-डाउन पॉप-अप स्टैक के रूप में 12-स्थिति वाला संचायक प्रदान किया।

प्रोग्राम में एक चर नाम का उपयोग करना (उदाहरण के लिए, 'डी') चर 'डी' का मान उत्पन्न करता है।

जब किसी नाम को कोष्ठक में बंद किया जाता है (उदाहरण के लिए, (d)), तो चर 'd' को स्टैक के शीर्ष पर संचायक के मान के साथ सम्बंधित किया जाता है। मानों को नष्ट करने के लिए स्टैक के शीर्ष पर, अर्धविराम (;) का उपयोग किया गया था।

निम्नलिखित जॉर्ज प्रोग्राम दस संख्याओं को पढ़ता है और उनके वर्गों को प्रिंट करता है:

1, 10 rep (i)
   read
   dup ×
   punch
   ;
]

उपरोक्त प्रोग्राम में, 'डुप' निर्देश ने स्टैक के शीर्ष को अनुकृत किया,

जिससे स्टैक के शीर्ष पर मान की दो प्रतियां उत्पन्न हों जाए।[6]

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

0,   0,   5, 1 
5,   0, 120, 2
120, 0,   0, 3

प्रत्येक कोडवर्ड में चौथा नंबर ब्रिक नंबर होता है। पहला कोडवर्ड निर्दिष्ट करता है कि आव्यूह कार्ड से पढ़ा जाता है और ड्रम पते 5 पर संग्रहीत किया जाता है; दूसरा कोडवर्ड निर्दिष्ट करता है कि ड्रम एड्रेस 5 पर आव्यूह ट्रांसपोज़ किया गया है, और परिणाम ड्रम एड्रेस 120 पर संग्रहीत है; और तीसरा पंच जो कार्डों पर परिणामित होता है।

एसटीएसी एक मैक्रो-असेम्बलर था। अधिकांश निर्देश स्थानांतरण के रूप में दशमलव में लिखे गए थे, जैसे 13-16, जिसका अर्थ रजिस्टर 13 में शब्द को रजिस्टर 16 में कॉपी करना है। निर्देश का स्थान निर्दिष्ट नहीं किया गया था। एसटीएसी ने डिले लाइन में एक शब्द के लिए एक निर्देश आवंटित किया, और द्विआधारी निर्देश के छह घटकों की गणना की। इसने अगले निर्देश को एक ऐसे स्थान पर आवंटित किया जो इष्टतम था, यदि संभव हो तो पिछला निर्देश पूरा होते ही निष्पादित किया जाना था।

निम्नलिखित प्रोग्राम एक मान n में पढ़ता है, और फिर n द्विआधारी पूर्णांक में पढ़ता है। यह पूर्णांक और उसके वर्ग को छिद्रित करता है। टिप्पणियाँ छोटे अक्षरों में निर्देश की व्याख्या करती हैं। <पूर्व> 1.0 12-24 कार्ड रीडर प्रारंभ करें। कार्यक्रम का स्थान 1.0 के रूप में निर्दिष्ट है।

    0-13X कार्ड रीडर से एक नंबर (n) पढ़ें। अक्षर X कंप्यूटर को प्रतीक्षा करने का कारण बनता है
              जब तक कार्ड की पहली पंक्ति रीडिंग स्टेशन पर नहीं पहुंच जाती।

R2 12-24 कार्ड रीडर को प्रारंभ या पुनः प्रारंभ करें।

    0-16X एक संख्या को वर्गित करने के लिए पढ़ें, इसे गुणक रजिस्टर में संग्रहीत करें।
    9-24 कार्ड रीडर बंद करें।
   16-21.3 संख्या को गुणक रजिस्टर में कॉपी करें।
   30-21.2 मल्टीप्लिकैंड रजिस्टर के निम्न-क्रम बिट्स को साफ़ करें।
    बहु
   10-24 कार्ड पंच शुरू करें।
   21.2-29X वर्ग को कार्ड पंच पर भेजें।
    9-24 कार्ड पंच बंद करो।
   27-26 वेतन वृद्धि एन.
   शून्य के लिए 13-28 आर1 परीक्षण। शून्य से R1 पर शाखा; शाखा शून्य से R2 तक नहीं।

R1 1-1X पड़ाव; कार्यक्रम पूरा हो गया है. </पूर्व> एसटीएसी निम्नलिखित निर्देश तैयार करेगा (द्विआधारी प्रोग्राम के अतिरिक्त)। प्रत्येक निर्देश का मेमोरी स्थान बाईं ओर प्रदर्शित किया गया है। <पूर्व> 1.0 12-24 1.2 0-13एक्स 1.4 12-24 1.6 0-16X 1.8 9-24 1.10 16-21.3 1.13 30-21.2 1.16 0-24 प्रतीक्षा 1 1.18 1-1 प्रतीक्षा 1 1.20 10-24 1.22 21.2-29एक्स 1.24 9-24 1.26 27-26 1.28 13-28 1.3

1.3 1-1X

गुणन को छोड़कर, प्रतीक्षा और समय संख्याएँ नहीं दिखाई जाती हैं।

प्रोग्रामिंग

Deuce की प्रोग्रामिंग अन्य कंप्यूटरों से भिन्न थी। डिले लाइनओं की क्रमबद्ध प्रकृति के लिए आवश्यक है कि निर्देशों को इस तरह से आदेश दिया जाए कि जब एक निर्देश का निष्पादन पूरा हो जाए, तो अगला एक डिले लाइन से उभरने के लिए तैयार हो। एकल रजिस्टरों पर संक्रिया के लिए, अगले निर्देश का पालन करने का प्रारंभिक समय वर्तमान के बाद 64 माइक्रोसेकंड था। इस प्रकार, अनुदेश अनुक्रमिक स्थानों से निष्पादित नहीं किये गये। सामान्य तौर पर, निर्देश एक या अधिक शब्दों को स्थानांतरित कर सकते हैं। परिणामस्वरूप, प्रत्येक निर्देश अगले निर्देश का स्थान निर्दिष्ट करता है। इष्टतम प्रोग्रामिंग का मतलब था कि जैसे ही प्रत्येक निर्देश निष्पादित किया गया था, अगला एक डिले लाइन से उभर रहा था। यदि किसी निर्देश का स्थान इष्टतम नहीं है तो स्टोर में निर्देशों की स्थिति प्रदर्शन को बहुत प्रभावित कर सकती है।

कार्ड रीडर से डेटा पढ़ना वास्तविक समय में किया गया था - प्रत्येक पंक्ति को पढ़ा जाना था क्योंकि यह बिना रुके, पढ़े गए ब्रश से गुज़रता था। इसी प्रकार कार्ड पंच के लिए; किसी विशेष पंक्ति के लिए शब्द पहले से तैयार किया गया था और उसे तब तैयार होना था जब कार्ड की दी गई पंक्ति पंच चाकू के नीचे की स्थिति में हो। पढ़ने और मुक्का मारने का सामान्य तरीका द्विआधारी था। दशमलव निविष्ट और आउटपुट सॉफ्टवेयर के माध्यम से किया गया था।

हाई-स्पीड स्टोर में 32 बिट्स के चार एकल-शब्द रजिस्टर, तीन डबल-शब्द रजिस्टर और दो चौगुनी-शब्द रजिस्टर सम्मिलित थे। दोहरे और चौगुने-शब्द रजिस्टरों के प्रत्येक 32-बिट शब्द को अलग से संबोधित किया जा सकता है। उन्हें एक जोड़ी के रूप में भी एक्सेस किया जा सकता है, और - चौगुनी रजिस्टरों के मामले में - तीन या चार के समूह के रूप में। अनुदेश भंडार में बारह पारा डिले लाइनएं सम्मिलित थीं, प्रत्येक 32 शब्द थे, और 1 से 12 तक क्रमांकित थे। डिले लाइन 11 (डीएल11) चुंबकीय ड्रम और हाई-स्पीड स्टोर के बीच बफर के रूप में कार्य करती थी। एक स्थानांतरण यंत्र होने के नाते, डेटा को एक समय में एक शब्द, एक समय में शब्दों की एक जोड़ी और एक समय में 33 तक कितने भी शब्दों को स्थानांतरित किया जा सकता है। इस प्रकार, उदाहरण के लिए, ड्रम से पढ़े गए 32 शब्दों को किसी अन्य डिले लाइन में ब्लॉक के रूप में स्थानांतरित किया जा सकता है; 4 शब्दों को एक ब्लॉक के रूप में एक चौगुनी रजिस्टर से दूसरे में, या चौगुनी रजिस्टर और एक डिले लाइन के बीच स्थानांतरित किया जा सकता है - सभी एक निर्देश के साथ। विलंब पंक्ति के 32 शब्दों को एकल-लंबाई योजक (एकल निर्देश के माध्यम से) में पास करके सारांशित किया जा सकता है।[12] DL10 और एक रजिस्टर, अर्थात् रजिस्टर 16 के बीच एक विशेष लिंक द्वारा, DL10 को पुश-डाउन स्टैक के रूप में उपयोग किया जा सकता है।

उत्पादन

पहली तीन यंत्रें 1955 के वसंत में वितरित की गईं; 1958 के अंत में एक ड्यूस मार्क II उन्नत मॉडल सामने आया। इस संस्करण में एक संयुक्त कार्ड रीडर और पंच का उपयोग किया गया। संयुक्त IBM 528 रीडर और पंच ने पहले की Deuce Mark I यंत्रों पर अलग-अलग होलेरिथ इकाइयों की तरह व्यवहार किया; हालाँकि, इसमें निविष्ट पर अल्फ़ान्यूमेरिक डेटा को बीसीडी में और आउटपुट पर इसके विपरीत हार्डवेयर रूपांतरण भी प्रदान किया गया था। डेटा को प्रति मिनट 100 कार्ड पर एक साथ पढ़ा और पंच किया जा सकता है। ड्यूस मार्क IIA ने सात अतिरिक्त पारा विलंब लाइनें प्रदान कीं, जिनमें से प्रत्येक 32 शब्दों की थी।

1955 और 1964 के बीच कुल 33 ड्यूस यंत्रें बेची गईं, जिनमें से दो इंजन निर्माता ब्रिस्टल सिडली द्वारा खरीदी गईं।[13] ड्यूस की सफलता इसकी 1000 से अधिक प्रोग्रामों और सबरूटीन्स की प्रोग्राम लाइब्रेरी के कारण थी।[14]


हार्डवेयर विशेषताएँ

ड्यूस मार्क 0 और मैं:

घड़ी की दर 1 मेगाहर्ट्ज
शब्द का आकार 32 बिट
हाई स्पीड स्टोर 384 शब्द
अंकगणित:
  एक 32-बिट संचायक;
  एक 64-बिट संचायक जिसका उपयोग दो 32-बिट संचायक के रूप में भी किया जा सकता है।
  जोड़/घटाव
     64 माइक्रोसेकंड एकल लंबाई,
     96 माइक्रोसेकंड दोहरी परिशुद्धता
     एकल लंबाई वाली संख्या को दोहरी लंबाई वाली संख्या में जोड़ना,
     स्वचालित साइन एक्सटेंशन के साथ, 64 माइक्रोसेकंड।
  गुणन 2080 माइक्रोसेकंड
  प्रभाग 2112 माइक्रोसेकंड
चुंबकीय ड्रम 8192 शब्द
  पढ़ने वाले शीर्ष और लिखने वाले शीर्ष को अलग करें
  ट्रैक पढ़ने का समय 15 एमएस
  हेड शिफ्ट का समय 35 एमएस
कार्ड रीडर की गति 200 कार्ड प्रति मिनट
कार्ड पंच गति 100 कार्ड प्रति मिनट
पेपर टेप रीडर गति 850 कैरेक्टर/सेकंड
  टेप: 5, 7, 8-पंक्ति टेप।
  रुकने का समय: ½ मिलीसेकंड (मि.से.)
  प्रारंभ समय 20 मिलीसेकंड
पेपर टेप पंच गति 25 अक्षर/सेकंड
  टेप: 5 या 7 पंक्तियाँ
सॉफ़्टवेयर फ़्लोटिंग-पॉइंट (औसत समय):
  जोड़/घटाव 6 मि.से.
  गुणन 5½ मि.से.
  डिवीजन 4½ एम.एस.

ड्यूस मार्क II:

  जहां तक ​​ड्यूस मार्क I का सवाल है।
  एक संयुक्त आईबीएम 528 कार्ड रीडर और पंच 200 प्रति मिनट की दर से कार्ड पढ़ सकते हैं, और 100 कार्ड प्रति मिनट की दर से पंच कर सकते हैं। जब एक साथ शुरू किया गया, तो रीडर और पंच 100 कार्ड प्रति मिनट की गति से चले। 6-बिट वर्णों में स्वचालित रूपांतरण प्रदान किया गया था। यह मोड मार्क I ड्यूस द्वारा प्रदान किए गए प्रोग्राम किए गए रूपांतरण के अतिरिक्त था।

ड्यूस मार्क IA और IIA:

  जैसा कि ऊपर बताया गया है, 7 अतिरिक्त विलंब लाइनों के साथ 224 शब्द हाई-स्पीड स्टोर प्रदान करते हैं।

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

यह भी देखें

संदर्भ

  1. Copeland, B. Jack (2012-05-24). Alan Turing's Electronic Brain: The Struggle to Build the ACE, the World's Fastest Computer (in English). OUP Oxford. pp. 4, 164, 327. ISBN 9780199609154.
  2. D. G. Burnett-Hall & P. A. Samet, "A Programming Handbook for the Computer DEUCE", Royal Aircraft Establishment, Ministry of Aviation, London (England), April 1959, Technical Note M.S.38.
  3. The DEUCE at NPL was intentionally not upgraded, and the DEUCE at the University of new South Wales was not upgraded until 1963.
  4. 4.0 4.1 Hamblin, Charles Leonard (May 1957). An Addressless Coding Scheme based on Mathematical Notation (Typescript). New South Wales University of Technology.{{cite book}}: CS1 maint: location missing publisher (link)
  5. 5.0 5.1 Hamblin, Charles Leonard (June 1957). "An addressless coding scheme based on mathematical notation". Proceedings of the First Australian Conference on Computing and Data Processing. Salisbury, South Australia: Weapons Research Establishment.
  6. 6.0 6.1 Hamblin, Charles Leonard (1958). GEORGE IA and II: A semi-translation programming scheme for DEUCE: Programming and Operation Manual (PDF). School of Humanities, University of New South Wales, Kensington, New South Wales. Archived (PDF) from the original on 2020-04-04. Retrieved 2020-07-27.
  7. Beard, Bob (Autumn 1997) [1996-10-01]. "The KDF9 Computer — 30 Years On" (PDF). Resurrection - The Bulletin of the Computer Conservation Society. No. 18. Computer Conservation Society (CCS). pp. 7–15. ISSN 0958-7403. Archived (PDF) from the original on 2020-07-27. Retrieved 2020-07-27. […] The KDF9 is remarkable because it is the believed to be the first zero-address instruction format computer to have been announced (in 1960). It was first delivered at about the same time (early 1963) as the other famous zero-address computer, the Burroughs B5000 in America. Like many modern pocket calculators, a zero-address machine allows the use of Reverse Polish arithmetic; this offers certain advantages to compiler writers. It is believed that the attention of the English Electric team was first drawn to the zero-address concept through contact with GEORGE (General Order Generator), a high-level programming language written for a DEUCE computer by Charles Hamblin at the New South Wales University of Technology, Australia, in 1957. GEORGE used Reverse Polish, and the KDF9 team were attracted to this convention for the pragmatic reason of wishing to enhance performance by minimising accesses to main store. This may be contrasted with the more `theoretical' line taken independently by Burroughs. Besides a hardware nesting store or stack - the basic mechanism of a zero-address computer - the KDF9 had other groups of central registers for improving performance which gave it an interesting internal structure. […] [1] (NB. This is an edited version of a talk given to North West Group of the Society at the Museum of Science and Industry, Manchester, UK on 1996-10-01.) [Quotation corrected 23 April 2021]
  8. Robinson, C. (1 April 1959). "ड्यूस व्याख्यात्मक कार्यक्रम". The Computer Journal (in English). 1 (4): 172–176. doi:10.1093/comjnl/1.4.172. ISSN 0010-4620. Abstract: This paper describes the principal features of (i) The General Interpretive Program, (ii) The Tabular Interpretive Program, and (iii) Alphacode, which are the interpretive programs which have been most extensively used in solving problems on DEUCE. The characteristics of these three schemes are compared and contrasted.
  9. Brian Randell & L. J. Russell, "DEUCE ALGOL", Report W/AT 844, Atomic Power Division, English Electric Co., Whetstone, Leicester, England, Feb. 1962.
  10. DEUCE Library Service, "DEUCE STAC Programming Manual", English Electric Co., Ltd, Kidsgrove, Staffs, England, c. 1960.
  11. Deuce Library Service, "DEUCE General Interpretive Programme", 2nd Ed., The English Electric Company Limited, Kidsgrove, Staffs, England, c. 1963.
  12. " 'English Electric' D.E.U.C.E. Programming Manual", The English Electric Company Limited, May 1956, publication No. NS-y-16.
  13. Dow, Andrew (2009-08-20). Pegasus, The Heart of the Harrier: The History and Development of the World's First Operational Vertical Take-off and Landing Jet Engine (in English). Pen and Sword. p. 186. ISBN 9781473817142.
  14. Copeland, B. J., ed., Alan Turing's Automatic Computing Engine, Oxford: Oxford University Press, 2005, ISBN 0-19-856593-3.


बाहरी संबंध