একটি মাইক্রোপ্রসেসরের জন্য সর্বাধিক সংখ্যক অপকড


13

এখানে চিত্র বর্ণনা লিখুন

প্রশ্নের সর্বাধিক সংখ্যক ওপকোড কত, উত্তরটি সি বিকল্প, তবে আমি মনে করি এটি বিকল্প ডি, কারণ, প্রতিটি ঠিকানা প্রতিটি মেমরির অবস্থান নির্দিষ্ট করে, সেখানে 16 ঠিকানা লাইন রয়েছে, যার অর্থ 2 ^ 16 ঠিকানা অর্থাত, 2 ^ 16 মেমরি অবস্থান।

সুতরাং, যদি প্রতিটি অবস্থানের মধ্যে একটি অপকোড থাকে, মোট 2 ^ 16 অবস্থানগুলিতে 2 ^ 16 টি অপকড থাকে এবং এটি সর্বাধিক সংখ্যক ওপকোড, তবে উত্তরটি সি হিসাবে দেওয়া হয়, যা 2 ^ 12 হয়। এটা কিভাবে সম্ভব?


7
প্রশ্নটি জিজ্ঞাসা করছে যে আইএসএতে কতগুলি ডিফারেন্ট অপকড করে, কতগুলি নির্দেশনা সর্বাধিক সম্ভাব্য প্রোগ্রাম তৈরি করতে পারে তা নয়।
ব্রায়ান ড্রামমন্ড

5
@ ব্রায়ান ড্রামমন্ড - সেই ব্যাখ্যার সাথে, তবে প্রশ্নটি কেবল তখনই অর্থবহ হয় যদি আপনি আইএসএ যেভাবে কাজ করে যা বিশ্বজনীন নয় সে সম্পর্কে অনুমান করে থাকেন। উদাহরণস্বরূপ, জেড 80 এর একটি 8 বিট ডেটা বাস রয়েছে তবে কোথাও 800 টি ভিন্ন বৈধ ওপকোডের অঞ্চলে - কারণ এটি উপলব্ধ ক্রিয়াকলাপগুলি প্রসারিত এবং পরিবর্তিত করতে উপসর্গ বাইট ব্যবহার করে।
জুলাই

15
বইটিতে শব্দযুক্ত প্রশ্নটি কোনও অর্থবোধ করে না। বাসের আকার এবং অপকোড আকারের মধ্যে কোনও সহজাত সরাসরি যোগাযোগ নেই। জেভিএম একটি 32-বিট ডেটা মডেলের উপর ভিত্তি করে তবে 8-বিট অপকড রয়েছে।
ক্রাইলিস -হান ধর্মঘট-

10
এই প্রশ্নটি অন্তর্নিহিত যদি না আমাদের কাছে প্রশ্নটিতে যা দেওয়া আছে তার বাইরে প্রচুর তথ্য না থাকে। একটি উত্তর পেতে আমাদের প্রক্রিয়াটির বৈশিষ্ট্যগুলি সম্পর্কে প্রচুর অনুমান করতে হবে - এমন অনুমানগুলি যা সত্যিকারের বিশ্ব প্রসেসরের বিশাল সংখ্যার পক্ষে সত্য নয়!
ডেভিড শোয়ার্টজ

14
প্রশ্ন বুলশিট। যদি প্রয়োজন হয় তবে একটি নির্দেশিকা অপকোড একাধিক মেমরি শব্দের বিস্তৃত করতে পারে। কোন সহজাত সীমা নেই।
হট লিক্স

উত্তর:


31

সমস্ত বিকল্প ভুল । একটি প্রসেসর কার্যকর করতে পারে এমন সর্বাধিক সংখ্যক (অনন্য) অপকড বাস প্রস্থের দ্বারা সীমাবদ্ধ নয়।


সাধারণত একটি 12+ বিট সিপিইউ ডেটা প্রতি শব্দে একটি কমান্ড রাখতে ডিজাইন করা হয় যাতে এটি একযোগে বেশিরভাগ নির্দেশাবলী পড়তে পারে। সুতরাং একটি সাধারণ সিপিইউ 2 ^ 12 অপকডের সীমাতে ইঞ্জিনিয়ার করা হবে।

2 CP 12 = 4096 অপকোডের বেশি রয়েছে এমন বিদ্যমান সিপিইউ আর্কিটেকচারগুলি খুব বিরল কারণ কেবল একটিই খুব বেশি প্রয়োজন - শেখার জন্য অনেক বেশি, অনেক বেশি সত্যই দরকারী হতে হবে, অত্যধিক ব্যয়বহুল সিলিকন স্পেস।

আপডেট : মন্তব্যে নির্দেশিত হিসাবে, x86 নির্দেশিকা সেটের সমস্ত সম্ভাব্য প্রকরণগুলি আপনার গণনা অনুসারে আসলে 6000 এরও বেশি যোগ করতে পারে! যদিও এটি ব্যতিক্রম বেশি।

তবে একটি 4-বিট সিপিইউ 2 ^ 4 = 16 নির্দেশাবলী খুব প্রায়শই পর্যাপ্ত হয় না, তাই এই জাতীয় প্রসেসরের অনেক বেশি থাকে।

একাধিক উপায় এবং কারণ থাকতে পারে একটি সিপিইউতে বাস বাসের চেয়ে বেশি অপকোড অন্তর্ভুক্ত থাকতে পারে, যার মধ্যে রয়েছে:

শব্দ বিস্তারের নির্দেশাবলী

একটি প্রসেসরের একটি একক ডেটা চক্রের একটি কমান্ড পড়ার দরকার নেই - এটি একাধিক ফলস্বরূপ চক্র ব্যবহার করতে পারে। আসলে বেশিরভাগ সিপিইউগুলি তা করে না - যদিও এটি নির্দেশিক যুক্তিগুলির চেয়ে বেশি ব্যবহৃত হয় তবে তারপরে অপকোড স্থানটি প্রসারিত করতে।

উদাহরণ: ইন্টেল 4004 এর কেবল 4 টি লাইন রয়েছে যা ডেটা / অ্যাড্রেস লাইন, 4-বিট ডেটা শব্দ, তবে 8-বিট নির্দেশিকায় 40 টিরও বেশি অপকড হিসাবে বহন করে।

উপসর্গ ও প্রত্যয়

একটি (সিআইএসসি) প্রসেসরের যতগুলি প্রয়োজন তত নির্দেশের উপসর্গ এবং প্রত্যয় থাকতে পারে।

এগুলি যা কিছু করে তা পরিবর্তনের জন্য একটি প্রকৃত নির্দেশের উপসর্গযুক্ত - এটি সামান্য বা সম্পূর্ণভাবে।

এটি আপনার "অনন্য অপকোড" এর সংজ্ঞা উপর নির্ভর করে। যদি কোনও এমন কোনও নির্দেশের কোনও অংশ ধরে নেন যা ডেটা অপকোডের অংশ নয়, তবে তাদের মোট সংখ্যাটিতে সমস্ত সম্ভাব্য প্রকরণ অন্তর্ভুক্ত থাকবে। তবে কেউ কেউ বিশ্বাস করেন যে এই সংযুক্তিগুলি নির্দেশের স্বতন্ত্র অংশ।

উদাহরণ: ইন্টেল x86 সিপিইউতে আসলে 4 এম অপকড থাকে না। তবে আপনি যদি একটি অপকোডের অংশ হিসাবে সমস্ত উপসর্গ গণনা করেন তবে আধুনিক সিপিইউগুলি 15 বাইট পর্যন্ত নির্দেশিকাগুলির অনুমতি দেয় - এটি সম্ভাব্য অপকোডের অনেক বেশি। যদিও অনেকে কেবল একই কাজ করবেন - তাই এটি তাদের "অনন্য" হওয়ার সংজ্ঞা উপর নির্ভর করে।

মোডগুলি

একটি প্রসেসরের অপারেশনের একাধিক মোড থাকতে পারে যার মধ্যে এটিতে সম্পূর্ণ ভিন্ন অপকডের সেট থাকতে পারে।

উদাহরণস্বরূপ: ইন্টেল x86_64 এর 32-বিট (রিয়েল / ভি 86 / সুরক্ষিত) এবং -৪-বিট মোড রয়েছে যার আলাদা অপকড রয়েছে। এআরএম সিপিইউগুলিতে এআরএম 32-বিট এবং থাম্ব 16-বিট মোড থাকতে পারে।

বাস বিট মাল্টিপ্লেক্সিং

প্রশ্নগুলিতে "ডেটা লাইন" এবং "অ্যাড্রেস লাইন" উল্লেখ করা হয়েছে, তবে অভ্যন্তরীণ ডাটা বাস এবং অভ্যন্তরীণ ঠিকানা উভয়ই আসল বাস লাইনের পরিমাণের চেয়ে প্রশস্ত হতে পারে।

মাল্টিপ্লেক্সড বাসের ডেটা ক্রমানুসারে পাঠানো হয়, প্রথম অর্ধেক, তারপরে দ্বিতীয়ার্ধে। সিপিইউ এটিকে পূর্ণ আকারের অভ্যন্তরীণ রেজিস্টারে সংরক্ষণ করে এবং সেগুলি পরিচালনা করে।

এটি প্রায়শই ব্যয় এবং / অথবা চিপ শারীরিক পদচিহ্নের আকার হ্রাস করতে করা হয়।

উদাহরণগুলিতে ইন্টেল 4004, এলপিসি ডেটা বাসের কিছু, এবং এনইসি ভিআর 4300, নিন্টেন্ডো 64 এর সিপিইউ অন্তর্ভুক্ত রয়েছে যেখানে কেবল 32-লাইনের ডেটা বাস ছিল।

সমান্তরাল বাস নেই

পূর্ববর্তী পয়েন্টের ধারাবাহিকতা হিসাবে, একটি সিপিইউ এমনকি মোটামুটি একটি সমান্তরাল বাস প্রকাশ করার প্রয়োজন নেই।

একটি সিপিইউ কেবলমাত্র সিক্যুয়াল বাস যেমন আই 2 সি, এসপিআই ইত্যাদি সহজেই প্রকাশ করতে পারে

এই জাতীয় ডেডিকেটেড সিপিইউ উত্পাদন করা খুব সম্ভবত সাশ্রয়ী নয়, তবে লো-পিন-কাউন্টের মাইক্রোকন্ট্রোলারগুলি (এতে সিপিইউ এবং মেমরি উভয়ই অন্তর্ভুক্ত রয়েছে) সেই মূল্যবান পিনগুলি আরও দরকারী কিছু হিসাবে সংরক্ষণের জন্য তৈরি করা হয়েছে। উদাহরণস্বরূপ, atmel ATTINY4 / 5/6/10 চিপগুলিতে কেবল 6 টি পিন রয়েছে, পাওয়ারের জন্য দুটি, পুনরায় সেট করার জন্য একটি, তিনটি সাধারণ উদ্দেশ্যে। নির্দেশাবলী ক্রমানুসারে মালিকানা 3-লাইন ইন্টারফেসের মাধ্যমে প্রেরণ করা হয়।

একটি মাইক্রোকন্ট্রোলারের আপনার সংজ্ঞা অনুসারে এটিকে একটি মাইক্রোপ্রসেসর হিসাবে বিবেচনা করা যেতে পারে বা এটির জন্য কর্মসূচী তৈরি করা যেতে পারে (অর্থাত্ সিক্যুয়ালি বাস বা বাসগুলির সাথে একটি উত্সর্গীকৃত সিপিইউ অনুকরণ)।

এই প্রশ্নটি পরিষ্কারভাবে জানিয়েছে যে কোনও ধরণের ডেটা বাসের আইএস উন্মুক্ত, তবে এটি সমান্তরাল বাস নয়। তত্ত্বের মধ্যে 12-লাইন ডেটা বাসে একটি একক সিরিয়াল ডেটা লাইন এবং 11 সহায়ক / স্থল / স্থিতি লাইন থাকতে পারে , যদিও এটি সম্ভবত খুব বুদ্ধিমান ধারণা নয়।

উত্সর্গীকৃত বাস বাস

প্রকৃতপক্ষে কোনও প্রসেসরের এমনকি একই বাস লাইনে নির্দেশনা গ্রহণ করার প্রয়োজন নেই যেমন এটি ডেটা করে।

এটি সহজেই ঘটতে পারে যখন ALUs মাইক্রোপ্রসেসরের অংশের চেয়ে আলাদা চিপস ছিল তবে এখন বেশিরভাগ সময় অর্থনৈতিকভাবে টেকসই নয়।

তবে কিছুই আপনাকে কেবল নির্দেশাবলীর জন্য নিবেদিত লাইনের সাথে একটি সিপিইউ বাস্তবায়ন করতে বাধা দেয় না। এই জাতীয় সিপিইউ কার্যকর হতে পারে যখন ডেটা অ্যারের (সিমডি) একক অপারেশন করতে হবে।

যেহেতু নির্দেশের বাসের প্রস্থ সম্পূর্ণরূপে স্বেচ্ছাচারী তাই সর্বাধিক সম্ভব অপকোড গণনা।


4
আগ্রহের বিষয় হিসাবে, আপনি কাকে জিজ্ঞাসা করবেন তার উপর নির্ভর করে x86-64 এর 1000 এবং 6000 অপকড রয়েছে ( 1 , 2 , 3 )।
এলএমএস

এগুলি এমনকি কখনও গণনা করার চেষ্টাও করেন নি, তবে সমস্ত প্রকারের সাথে এটি বোঝা যায়।
জ্যাক হোয়াইট

13

বেশ কয়েকটি উপায়ের মধ্যে সর্বাধিক সংখ্যক ওপকোডের কথা ভাবা যেতে পারে:

  • অনন্য অপকডগুলির সর্বাধিক সম্ভাব্য সংখ্যা।

এটি নির্দেশের প্রস্থ থেকে ডেটা বাসের প্রস্থ নয় বরং সংগ্রহ করা যেতে পারে। সাধারণত একটি অপকোড একক মেমরি অ্যাক্সেসে ফিট করে এবং তারপরে উত্তরটি 2 ^ 12 হয়। তবে কোনও প্রসেসরের সম্ভাব্য অপকোডের সংখ্যা 2 ^ 12 ছাড়িয়ে একাধিক প্রসারণের জন্য একটি বহু-চক্রের অপকোড ডিকোডিং প্রক্রিয়াটি প্রয়োগ করতে পারে।

  • প্রসেসর সরাসরি সম্বোধন করতে পারে এমন সর্বাধিক সংখ্যক নির্দেশাবলীর (অপকোডযুক্ত)।

প্রসেসর সরাসরি সম্বোধন করতে পারে এমন সর্বাধিক সংখ্যক নির্দেশিকাগুলি (অপকডগুলি সহ) ঠিকানা বাসের প্রস্থের (2 ^ 16) দ্বারা সীমাবদ্ধ। অপ্রত্যক্ষভাবে প্রসেসরটি আরও মেমরির সমাধান করতে সক্ষম হতে পারে যেমন একটি অপকোড অন্য উত্স থেকে নির্দেশাবলী আনার জন্য একটি পেজ-সোয়াপ বা অনুরূপ ক্রিয়াকলাপকে সহজতর করতে পারে।


2
প্রশ্নটি এতটা অস্পষ্ট নয়। যদি এটি আপনার দ্বিতীয় পয়েন্ট হিসাবে ব্যাখ্যা করার কথা মনে করা হত, তবে এটি "সর্বাধিক সংখ্যক নির্দেশাবলী যা সঞ্চিত / সম্বোধন / ..." হিসাবে রচনা করা যেতে পারে। "ওপকোড" শব্দটি এটিকে খুব পরিষ্কার করে দেয় এটি নির্দেশের সেট সম্পর্কে, আদরেরযোগ্য পরিসর সম্পর্কে নয়।
মিম

11
মাল্টি-ওয়ার্ড অপ-কোড উল্লেখ করার জন্য +1 উল্লেখ করা সম্ভব, তাই প্রশ্নটি খুব একটা ভাল নয়।
স্পিহ্রো পেফানি

2
নেটিভ ইংলিশ স্পিকারদের প্রায়শই একটি পক্ষপাতিত্ব থাকে যা তাদের ব্যবহার করা শব্দের খালি অর্থ বোঝা তাদের পক্ষে কঠিন করে তোলে। যখন আন্তর্জাতিক ইংরেজী স্পিকাররা এটি পড়তে বা শুনতে পায় তখন তারা দ্বিতীয় (উদ্দেশ্যযুক্ত) অর্থ নাও পেতে পারে। শিক্ষার্থী যখন নতুন এক্সপ্রেশন শিখেন তখন এটি একই প্রযোজ্য - যদি সূত্রগুলি অস্পষ্ট থাকে তবে ভুল বোঝা সহজ। সুতরাং আমি অনুমান করব যে ছাত্রটি শিখে গেছে যে প্রতিটি নির্দেশের মধ্যে একটি অপকোড অংশ থাকে। হ্যাঁ, আমি বলব যে এটি সত্য। সত্যই, প্রশ্নের উত্তর 01. অস্পষ্ট।
HKOB

4
@ স্প্রেপ্রোফেনি ইয়েপ, প্রশ্নটি আরও প্রসঙ্গ ছাড়াই নিঃসন্দেহে অস্পষ্ট। যদি ওপিকে শেখানো হয় যে, নির্দেশের দৈর্ঘ্য যাই হোক না কেন, প্রথম মেমোরি অ্যাক্সেসে অপকডটি আনা হবে, তবে উত্তরটি (গ), অন্যথায়, এটি অনস্বীকার্য। মুল বক্তব্যটি হ'ল, ওপি কি তার EE.SE প্রশ্নে যথেষ্ট প্রসঙ্গ দিয়েছে, বা তাঁর শিক্ষক (গুলি) কিছুটা দিয়েছেন এবং একটি দ্ব্যর্থক প্রশ্ন তৈরি করেছেন?
লরেঞ্জো দোনাটি - কোডিডাক্ট.অর্গ

1
@ স্প্রেপ্রোফেনি সত্য :) তবে ইংলিশরা - সম্ভবত তাদের হালকা বিরক্তির জন্যও - আন্তর্জাতিক ইংরেজি বিশ্বের অংশ ( বিবিসি.com/
ক্যাপিটাল

4

আপনি এই প্রশ্নটি দ্বারা বিভ্রান্ত হওয়া ঠিক বলেছেন - এটি খুব খারাপভাবে লেখা হয়েছে।

তবে আমি সন্দেহ করি যে এই প্রশ্নের অভিপ্রায়টি মেশিনের জন্য নির্দেশ শব্দের আকার নির্ধারণ করা। প্রদত্ত খুব অসম্পূর্ণ ডেটা দেওয়া, এটি অবশ্যই ডাটা বাসের প্রস্থের সাথে সামঞ্জস্য করবে ; ঠিকানা বাসের প্রস্থ প্রধান মেমরির সর্বাধিক আকার নির্ধারণ করে।

অনুশীলনে, প্রদত্ত মেশিনের নির্দেশাবলীর "ওপকোড" ক্ষেত্রটি প্রায়ই নির্দেশের চেয়ে উল্লেখযোগ্যভাবে ছোট হয়, তবুও নির্দেশিকা ডেটা বাসের চেয়ে আরও বিস্তৃত হতে পারে।

পুরানো মটোরোলা 68008 এটি একটি ক্ষেত্রে - এটি 8-বিট ডেটা বাসের সাথে 68000 এর একটি ব্যয় হ্রাস করা সংস্করণ ছিল তবে এটি একই 16-বিট নির্দেশের শব্দ ব্যবহার করেছে, যেখানে সাধারণত 7 টি বিট অপকোড নির্ধারণ করে (অবশিষ্টটি) উত্স এবং গন্তব্য নিবন্ধসমূহ এবং ঠিকানা ঠিকানা মোডগুলি সনাক্ত করুন , এগুলির সবগুলি অপকড নয়, অপারেশন হিসাবে বিবেচনা করা উচিত )। যদি আপনি কিছুকে যেমন ওপকোডে ঠিকানা মোড বিট অন্তর্ভুক্ত করেন তবে এটি মোট 10-বিট অপকোড ক্ষেত্র তৈরি করে। আসল নির্দেশাবলী কিছু ঠিকানা মোডে যথেষ্ট দীর্ঘ হতে পারে।


"বাকী অংশটি উত্স এবং গন্তব্য নিবন্ধসমূহ এবং অ্যাড্রেসিং মোড সনাক্ত করে, এগুলির সবগুলি অপকড নয়, অপকড হিসাবে বিবেচনা করা উচিত" ... ভাল, এটি মতামতের একটি বিষয়। একটি আরআইএসসি আর্কিটেকচারের জন্য, এটি স্পষ্টভাবে সত্য, তবে অনেক ক্ষেত্রে সিআইএসসি আর্কিটেকচারগুলি এমন একটি অ্যাডহক উপায়ে সংজ্ঞায়িত করা হয় যে প্রতিটি সংমিশ্রণকে পৃথক অপকোড হিসাবে গণনা করা সম্ভবত বোধগম্য হয়। জেড 80 হ'ল একটি বিষয় - যদিও এর অনেক নির্দেশাবলীর মধ্যে এক বা দুটি নিবন্ধকে অপকোডের বিটগুলিতে এনকোড করা হয়েছে, ঠিকানার মোডগুলি পুরোপুরি অ্যাড-হক এবং উপসর্গগুলির ব্যাখ্যা বদলে দেয় ...
জুলস

... উভয় ক্ষেত্রে অ্যাড্রেসিং মোড এবং নিবন্ধন করুন যা বিটফিল্ড থেকে রেজিস্ট্রিগুলির ব্যাখ্যা সোজা করার চেয়ে কিছুটা কম করে দেয়। বেশিরভাগ ডকুমেন্টেশন এবং এসেমব্লাররা বোঝার জন্য কাজ করে বলে মনে হয়, সুতরাং নির্দেশ এবং রেজিস্টারগুলির প্রতিটি সংমিশ্রণ একটি পৃথক অপকোড, এবং কেবলমাত্র তাত্ক্ষণিক মান এবং অপ্রত্যক্ষ ঠিকানা অফসেট মানগুলি অপারেশন। এই বিশ্ব দৃষ্টিভঙ্গিটি তার পূর্বসূর, ইন্টেল 8080 দ্বারা ভাগ করা হয়েছে, যেখানে স্ট্যান্ডার্ড অ্যাসেম্বলি ভাষার ফর্ম্যাটটি স্মৃতিবিদ্যার অংশ হিসাবে এনকোডড একটি নির্দেশিকার দ্বারা নিবন্ধগুলি চালিত করেছিল, আর্গুমেন্ট হিসাবে দেওয়া হয়নি।
জুলাইস

সত্য - জেড 80 টি 8-বিট মাইক্রোকোডেড সিপিইউগুলির পক্ষে সাধারণত। 6502 এর মধ্যে আরও লজিকাল অপকোড ম্যাপিং ছিল যা ডিকোড সার্কিটরিটিকে অনুকূলিত করার অনুমতি দেয়। তবে আমি বিশেষত 68 কে সম্পর্কে কথা বলছিলাম, যার নির্দেশাবলীতে খুব স্বতন্ত্র ঠিকানা-মোড এবং গন্তব্য-নিবন্ধভুক্ত ক্ষেত্র রয়েছে। সেগুলি বিয়োগ করার পরেও অপকড ক্ষেত্রটি 68008 এর ডেটা বাসের চেয়ে আরও প্রশস্ত হতে পারে।
ক্রোম্যাটিক্স

1

এডসন ডেকাস্ট্রো ঠিক ঠিক ঠিক এর মতো একটি কম্পিউটার ডিজাইন করেছিলেন, পিডিপি -8, 15 ঠিকানা এবং 12 ডেটা লাইন সহ।

সুতরাং পোস্ট করা প্রশ্নের উত্তর 574 অপ-কোড, কারণ পিডিপি -8 এর 284 অপ-কোড ছিল, এবং এডটি কেবল অর্ধেক উন্মাদ।


2
নিশ্চিত নয় যে ডাউনটাওয়েট - এটি যে কোনও হিসাবে উত্তর হিসাবে উত্তম, যদিও এই প্রশ্নটি মূলত অর্থহীন given :)
জুলাই

আমার সন্দেহ হয় ডাউনওয়েটি কারণ 284 * 2 = 568, 574 নয়
মার্ক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.