টিএল; ডিআর;
"এফএস" / "জিএস" নিবন্ধটি কীসের জন্য উদ্দিষ্ট?
কেবলমাত্র ডিফল্ট ডেটা বিভাগ (ডিএস) এর বাইরে ডেটা অ্যাক্সেস করতে। হ'ল ES এর মতো like
দ্য লং রিড:
সুতরাং আমি জানি যে নিবন্ধগুলি এবং সেগুলির ব্যবহারগুলি কী বলে মনে হচ্ছে:
[...]
ঠিক আছে, প্রায় তবে ডিএস 'কিছু' ডেটা বিভাগ নয়, তবে এটি ডিফল্ট। সমস্ত অপারেশন ডিফল্টরূপে করা হয়েছিল (* 1)। এটি হ'ল সমস্ত ডিফল্ট ভেরিয়েবলগুলি অবস্থিত - মূলত data
এবং bss
। X86 কোডটি বরং কমপ্যাক্ট হওয়ার কারণ এটি কোনওভাবেই। সমস্ত প্রয়োজনীয় ডেটা, যা প্রায়শই অ্যাক্সেস করা হয়, (প্লাস কোড এবং স্ট্যাক) 16 বিট শর্টহ্যান্ড দূরত্বের মধ্যে।
ES অন্য সমস্ত কিছুর (* 2), ডিএস-এর 64 কিবি ছাড়িয়ে সমস্ত কিছুতে অ্যাক্সেস করতে ব্যবহৃত হয়। ওয়ার্ড প্রসেসরের পাঠকের মতো, স্প্রেড শিটের সেলগুলি বা গ্রাফিক্স প্রোগ্রামের চিত্রের ডেটা এবং আরও কিছু। প্রায়শই ধরে নেওয়া যায় না this
অনুরূপ এটি কেবলমাত্র একটি সামান্য বিরক্তি যা ডিএস এবং ইএস স্ট্রিং অপারেশনগুলি করার সময় লোড (এবং পুনরায় লোড) করতে হতে পারে - এটি অন্ততপক্ষে তার সময়ের সেরা চরিত্র পরিচালনা করার নির্দেশগুলির মধ্যে একটি অফসেট।
ব্যবহারকারী ডেটা Ki৪ কিবি ছাড়িয়ে গেলে এবং ক্রিয়াকলাপ শুরু করতে হলে সত্যই ব্যথা হয়। কিছু ক্রিয়াকলাপ একসাথে একক উপাত্ত আইটেমের মাধ্যমে (চিন্তা করুন A=A*2
) বেশিরভাগ ক্ষেত্রে দুটি ( A=A*B
) বা তিনটি ডেটা আইটেম ( A=B*C
) প্রয়োজন হয় ( যদি এই আইটেমগুলি বিভিন্ন বিভাগে থাকে, তবে বেশ কয়েকটি ওভারহেড যুক্ত করে, অপারেশন প্রতি কয়েকবার ES পুনরায় লোড করা হবে।
শুরুতে, 8 বিট ওয়ার্ল্ড (* 3) এবং সমানভাবে ছোট ডেটা সেটগুলি থেকে ছোট প্রোগ্রামগুলি দিয়ে, এটি কোনও বড় বিষয় ছিল না, তবে শীঘ্রই এটি একটি বড় পারফরম্যান্স বোতলের ঘাড়ে পরিণত হয়েছে - এবং আরও বেশি গাধাটির জন্য সত্যিকারের ব্যথা প্রোগ্রামার (এবং সংকলক)। 386 ইন্টেল অবশেষে আরও দুটি বিভাগ যুক্ত করে ত্রাণ বিতরণ করেছে, সুতরাং মেমরির মধ্যে ছড়িয়ে থাকা উপাদানগুলির সাথে কোনও সিরিজ অ্যানারি , বাইনারি বা ত্রৈমাসিক ক্রিয়াকলাপ, ES কে পুরো সময় লোড না করেই ঘটতে পারে।
প্রোগ্রামিং (কমপক্ষে সমাবেশে) এবং সংকলক ডিজাইনের জন্য, এটি বেশ লাভ হয়েছিল। অবশ্যই, আরও বেশি কিছু হতে পারে তবে তিনটি বোতল ঘাড়টি মূলত চলে গেছে, তাই এটি বাড়তি করার দরকার নেই।
নামকরণ অনুসারে F / G বর্ণগুলি হ'ল E এর পরে কেবল বর্ণানুক্রমিক ধারাবাহিকতা। কমপক্ষে সিপিইউ ডিজাইনের দিক থেকে কিছুই জড়িত না।
* 1 - স্ট্রিং গন্তব্যের জন্য ES এর ব্যবহার একটি ব্যতিক্রম, কেবলমাত্র দুটি বিভাগ রেজিস্টার প্রয়োজন। এগুলি ছাড়া খুব বেশি কার্যকর হবে না - বা সর্বদা একটি বিভাগ উপসর্গের প্রয়োজন। যা আশ্চর্যজনক বৈশিষ্ট্যগুলির মধ্যে একটির (মারপিটবিহীন) স্ট্রিং নির্দেশাবলীর ব্যবহারের ফলে তাদের একক বাইট এনকোডিংয়ের ফলে চরম কার্যকারিতা দেখা দিতে পারে in
* 2 - সুতরাং অন্ধকারে 'এভারিথ সেগমেন্ট' এর চেয়ে 'সমস্ত কিছু অন্য বিভাগ' নামকরণের উপায় ভাল হত।
* 3 - এটা মনে রাখা সর্বদা গুরুত্বপূর্ণ যে ৮৮০০ শেষ না হওয়া অবধি 8086 কেবল স্টপ ফাঁক পরিমাপ হিসাবে বোঝানো হয়েছিল এবং মূলত এম্বেডড ওয়ার্ল্ডের জন্য 8080/85 গ্রাহকদের বোর্ডে রাখার উদ্দেশ্যে করা হয়েছিল।