2012-04-14 14 views
5

मैं 0x10c से an assemblinker for the 16-bit DCPU लागू कर रहा हूं।टर्बो पास्कल ने कैसे काम किया?

एक तकनीक जिसे किसी ने मुझे सुझाव दिया था, रनवे समय पर कोड को स्वैप करने के लिए "दिन में टर्बो पास्कल की तरह" ओवरले का उपयोग कर रहा था।

मुझे मूल विचार मिलता है (लिंक को समान स्मृति में ओवरलेड प्रतीक, रेफरी से पहले स्वैप करें), लेकिन उनका कार्यान्वयन क्या था?

क्या यह एक ऐसा कार्य था जिसे संकलक संदर्भ से पहले सम्मिलित किया गया था? क्या यह एक जाल था? ओवरले के स्थान पर संग्रहीत ओवरले के लिए डेटा, या कहीं बड़ी तालिका में डेटा था? क्या यह अच्छी तरह से काम करता है, या यह अक्सर तोड़ दिया? क्या ओवरलेड पास्कल (और इसके विपरीत) के साथ जोड़ने के लिए असेंबली के लिए कोई इंटरफ़ेस था, या यह असंगत था?

Google मुझे मूल रूप से कोई जानकारी नहीं दे रहा है (इसके अलावा आधुनिक पास्कल कंपाइलर्स पर नो-ऑन होने के अलावा)। और, मैं बस पांच वर्ष की उम्र में युवा हूं, जब वे वर्तमान थे, तब भी उन्हें जरूरी था।

+0

लिंक 0x10c.com पहुंच योग्य नहीं है (स्थायी टाइमआउट)। क्या कोई प्रतिस्थापन है? – ChristianWimmer

उत्तर

4

प्रति इकाई एक कूद तालिका जिसका तत्व लोड नहीं होने पर एक जाल (int 3F) को इंगित करता है। लेकिन यह पुराने टर्बो पास्कल/बोरलैंड पास्कल संस्करणों (5/6) के लिए है, नए लोग भी समर्थन (286) संरक्षित मोड का समर्थन करते हैं, और वे अभी तक एक और योजना निभा सकते हैं।

इस योजना का अर्थ है कि जब ओवरले लोड होता है, तो कोई जाल ओवरहेड नहीं होता है।

मुझे यह लिंक मेरे संदर्भ में मिला: The Slithy Tove। वहाँ अन्य अच्छे विवरण हैं, जैसे कि कॉल चेन कैसे संभाले जाते हैं जो एकाधिक ओवरले का विस्तार करते हैं।

+0

सही * पर *! यह वही है जो मुझे चाहिए! धन्यवाद। –

संबंधित मुद्दे