স্ট্যাক / স্ট্যাক পয়েন্টার কী: প্রকার ও তার অ্যাপ্লিকেশন

সমস্যাগুলি দূর করার জন্য আমাদের উপকরণটি ব্যবহার করে দেখুন





স্ট্যাকটি লিনিয়ার ডেটা স্ট্রাকচার ব্যতীত আর কিছুই নয় যেখানে সন্নিবেশ এবং মোছা কেবল এক প্রান্তে ঘটে। সন্নিবেশ ক্রিয়াকলাপটির একটি বিশেষ নাম পুশ নামে পরিচিত এবং মুছে ফেলা অপারেশনটিরও একটি বিশেষ নাম রয়েছে যা পিওপি নামে পরিচিত। পুশ এবং পিওপি দুটি মৌলিক ক্রিয়াকলাপ যা কেবল একটি নির্দিষ্ট স্ট্যাকের মধ্যেই চালিত হতে পারে। এটি মেমরির অবস্থানগুলির একটি গ্রুপ এবং মেমরির অবস্থানগুলি মেমরি পড়ার বা মেমরির সাথে সম্পর্কিত। এটি প্রোগ্রামের সঞ্চালনের সময় বাইনারি তথ্য সংরক্ষণের জন্য ব্যবহৃত হয়, যখন আমরা কোনও প্রোগ্রাম চালাচ্ছি তখন সেই প্রোগ্রামের বিষয়বস্তুগুলি স্ট্যাকের মধ্যে সঞ্চয় করতে চলেছে। এটা অনুসরন করে লাস্ট ইন ফার্স্ট আউট (LIFO) এবং এটি কেবল ডেটা সঞ্চয় এবং পুনরুদ্ধারের জন্য ব্যবহৃত হয় তবে ডেটা সংরক্ষণের জন্য ব্যবহৃত হয় না। স্ট্যাক / স্ট্যাক পয়েন্টারের সংক্ষিপ্ত ব্যাখ্যা নীচে আলোচনা করা হয়েছে।

স্ট্যাক / স্ট্যাক পয়েন্টার কী?

সংজ্ঞা: স্ট্যাক হ'ল স্টোরেজ ডিভাইস, যা লিফোর পদ্ধতিতে তথ্য বা ডেটা সংরক্ষণের জন্য ব্যবহৃত হয় (লাস্ট ইন ফার্স্ট আউট)। আমরা যখনই LIFO পদ্ধতিতে ডেটা প্রবেশ করি তখন যে উপাদানটি প্রথমে মুছতে হয় তা হ'ল শেষ সন্নিবেশকারী উপাদান, তাই সর্বশেষ sertedোকানো উপাদানটি প্রথমে বাইরে নেওয়া হয়। এটি স্ট্যাক পয়েন্টার (এসপি) নামক ঠিকানা নিবন্ধের মধ্যে থাকা মেমরি ইউনিট। স্ট্যাক পয়েন্টারটি সর্বদা স্ট্যাকের শীর্ষ উপাদানকে নির্দেশ করে যার অর্থ ডেটা locationোকাতে হবে সেই অবস্থানটি।




স্ট্যাকের প্রকারগুলি

দুটি ধরণের স্ট্যাক রয়েছে সেগুলি রেজিস্টার স্ট্যাক এবং মেমরি স্ট্যাক।

স্ট্যাক নিবন্ধন করুন

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



রেজিস্টার স্ট্যাকে অপারেশন পুশ করুন

ধাপ 1: স্ট্যাক পয়েন্টার 1 দ্বারা বৃদ্ধি।

এসপি ← এসপি + 1


ধাপ ২: স্ট্যাকের মধ্যে ডেটা প্রবেশ করান।

1000 [এসপি] T সিটি

যেখানে ডিআর হ'ল ডেটা রেজিস্টার

ধাপ 3: স্ট্যাকটি পূর্ণ কিনা তা পরীক্ষা করে দেখুন

যদি (এসপি = 0) তবে (পূর্ণ ← 1)

পদক্ষেপ 4: খালি নয় চিহ্নিত করুন

খালি ← 0

রেজিস্টার স্ট্যাক পপ অপারেশন

ধাপ 1: স্ট্যাক থেকে ডেটা পড়ুন।

ডিআর ← এম [এসপি]

ধাপ ২: স্ট্যাক পয়েন্ট হ্রাস।

এসপি ← এসপি -১

ধাপ 3: স্ট্যাকটি খালি কিনা তা যাচাই করুন

যদি স্প = 0 হয় তবে খালি ← 1

-৪-বিট রেজিস্টার স্ট্যাকের স্ট্যাক সংগঠনটি নীচের চিত্রটিতে দেখানো হয়েছে।

স্ট্যাক সংস্থা নিবন্ধন করুন

স্ট্যাক সংস্থা নিবন্ধন করুন

মেমরি স্ট্যাক

মেমরি স্ট্যাকের মধ্যে, স্ট্যাকের গভীরতা নমনীয়। এটি প্রচুর পরিমাণে মেমোরি ডেটা দখল করে রেজিস্টারে স্ট্যাক করে কেবল সীমাবদ্ধ সংখ্যক মেমরি শব্দ সংরক্ষণ করা হবে।

মেমরি স্ট্যাক ইন অপারেশন পুশ করুন

ধাপ 1: এসপি ← এসপি -১

ধাপ ২: 1000 [এসপি] T সিটি

মেমরি স্ট্যাকের পপ অপারেশন

ধাপ 1: ডিআর ← এম [এসপি]

ধাপ ২: এসপি ← এসপি -১

রেজিস্টার ইউনিটের সাথে তুলনা করুন, মেমরি ইউনিট প্রচুর পরিমাণে ডেটা সঞ্চয় করে। মেমরি স্ট্যাক চিত্রটি নীচের চিত্রটিতে প্রদর্শিত হবে।

মেমরি স্ট্যাক

মেমরি স্ট্যাক

মোট মেমরি ইউনিটটি তিন ভাগে বিভক্ত, প্রথম মেমরি ইউনিটে প্রোগ্রাম রয়েছে (নির্দেশাবলীর বাইরে কিছুই নয়), দ্বিতীয় অংশটি ডেটা (অপারেশন) এবং তৃতীয় অংশটি স্ট্যাক is প্রোগ্রামের নির্দেশাবলী সর্বদা প্রোগ্রামের কাউন্টারে (পিসি) সঞ্চিত থাকে, তথ্য নিবন্ধগুলি ঠিকানা রেজিস্টার (এআর) দ্বারা সনাক্ত করা হয় identified স্ট্যাকের জন্য ব্যবহৃত 3000 থেকে 4001 ঠিকানা এবং প্রথম আইটেম বা উপাদানটি 4001 এ সঞ্চিত রয়েছে।

8085 মাইক্রোপ্রসেসরে স্ট্যাক / স্ট্যাক পয়েন্টার

8085 এর প্রোগ্রামার দর্শন মাইক্রোপ্রসেসর সাধারণ উদ্দেশ্য রেজিস্টার এবং বিশেষ উদ্দেশ্য রেজিস্টার । সাধারণ উদ্দেশ্যে নিবন্ধকরা হলেন এ, বি, সি, ডি, ই, এইচ, এল, এবং বিশেষ উদ্দেশ্যে নিবন্ধগুলি হলেন এসপি (স্ট্যাক পয়েন্টার) এবং পিসি (প্রোগ্রাম কাউন্টার)। 8085 মাইক্রোপ্রসেসরের প্রোগ্রামার ভিউটি নীচের চিত্রটিতে দেখানো হয়েছে।

8085 এর প্রোগ্রামার ভিউ

8085 এর প্রোগ্রামার ভিউ

স্ট্যাক পয়েন্টারটি একটি 16-বিট রেজিস্টারটিতে মেমরি ঠিকানা রয়েছে, ধরুন স্ট্যাক পয়েন্টার (এসপি) সামগ্রীগুলি FC78H হয়, তবে মাইক্রোপ্রসেসর 8085 এটি ব্যাখ্যা করে। মেমরির অবস্থানগুলিতে FC78H থেকে FFFH এবং FC77H থেকে 0000H পর্যন্ত মেমরির অবস্থানের দরকারী তথ্য নেই। স্ট্যাক পয়েন্টারটির ব্যাখ্যা নীচের চিত্রটিতে দেখানো হয়েছে।

স্ট্যাক পয়েন্টার এর ব্যাখ্যা

স্ট্যাক পয়েন্টার এর ব্যাখ্যা

স্ট্যাক / স্ট্যাক পয়েন্টার এর প্রাথমিক অপারেশন

স্ট্যাকের দুটি অপারেশন রয়েছে সেগুলি: পুশ অপারেশন এবং পিওপি অপারেশন।

পুশ অপারেশন

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

পুশ এবং পিওপি এর বেসিক অপারেশন

পুশ এবং পিওপি এর বেসিক অপারেশন

চিত্র (ক) হ'ল স্ট্যাক। যদি আপনি উপাদানটিকে স্ট্যাকের মধ্যে একটি সন্নিবেশকারী উপাদানটি চাপতে চান তবে আপনাকে (গুলি, ক) টিপতে হবে, যেখানে ‘গুলি’ স্ট্যাক ব্যতীত আর কিছুই নয়। স্ট্যাকের মধ্যে আমরা ‘একটি’ উপাদান রাখছি এবং এই অপারেশনটি চিত্র (খ) এ দেখানো হয়েছে। চিত্রটি দেখুন (3), ধরুন স্ট্যাকটিতে তিনটি উপাদান রয়েছে ক, বি, সি এবং স্ট্যাকটি একটি উপাদান দিয়ে পূর্ণ হয়েছে।

আপনি যদি পুশ (গুলি, ডি) ব্যবহার করে একটি চতুর্থ এলিমেন্ট ‘ডি’ সন্নিবেশ করতে চান তবে উপাদানটি সন্নিবেশ করার জন্য কোনও স্থান উপলব্ধ নেই তবে এটি নির্দেশ করে যে স্ট্যাকটি ওভারফ্লো হয়েছে। স্ট্যাক পূর্ণ হলে ওভারফ্লো পরিভাষা ব্যবহৃত হয় এবং পুশ অপারেশনের অ্যালগরিদম নীচে প্রদর্শিত হয়।

ধাক্কা (স্ট্যাক [], শীর্ষ, সর্বাধিক স্ট্যাক, আইটেম)

যদি (শীর্ষ == ম্যাকস্ট্যাক -১)

{

'ওভারফ্লো' মুদ্রণ

}

অন্য

{

শীর্ষ = শীর্ষ + 1

স্ট্যাক [শীর্ষ] = আইটেম

}

শেষ

পিওপি অপারেশন

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

পপ অপারেশনের ক্ষেত্রে যথাক্রমে আন্ডারফ্লো চেক করতে হবে। পপ অপারেশনে শীর্ষ উপাদানগুলি পপড বা মুছে ফেলা উচিত এমন স্ট্যাকের মধ্যে উপস্থিত থাকে, তাই কোন উপাদানটি পপ করা হবে তা উল্লেখ করার দরকার নেই, ডিফল্টরূপে শীর্ষতম উপাদানটি পপ করা হবে। পপ অপারেশনের অ্যালগরিদম নীচে দেখানো হয়েছে।

পপ (স্ট্যাক [], শীর্ষ, আইটেম)

যদি (শীর্ষ == - 1)

{

'আন্ডারফ্লো' মুদ্রণ

}

অন্য

{

আইটেম = স্ট্যাক [শীর্ষ]

শীর্ষ = শীর্ষ -1

}

উদাহরণ

উপাদানগুলিকে A, B, C, D, E হিসাবে ক্রমে সন্নিবেশ করা হয়, এটি পাঁচটি উপাদানের স্ট্যাককে উপস্থাপন করে। চিত্র (ক) এ, আমরা স্ট্যাকের উপর 'এ' উপাদানটি চাপতে চাই তারপরে শীর্ষে শূন্য (শীর্ষ = 0) হয়, একইভাবে শীর্ষে = 1 যখন 'বি' উপাদানটি ধাক্কা দেওয়া হয়, শীর্ষ = 2 যখন 'সি' উপাদানটি থাকে ধাক্কা দেওয়া হয়, যখন 'ডি' উপাদানটি পুশ করা হয় শীর্ষ = 3 এবং 'ই' উপাদানটি পুশ করলে শীর্ষ = 4

সুতরাং আমি যে উপাদানগুলি নিয়েছি তা স্ট্যাকের মধ্যে রাখা হয়েছে, এখন স্ট্যাকটি পূর্ণ is আপনি যদি অন্য উপাদানটিকে ধাক্কা দিতে চান তবে স্ট্যাকের কোনও স্থান নেই, সুতরাং এটি ওভারফ্লো নির্দেশ করে। এখন স্ট্যাকটি পূর্ণ হয়েছে যদি আপনি ‘ই’ এলিমেন্টটি এলিমেন্টটি পপ করতে চান তবে প্রথমে মুছতে হবে। পুশ অপারেশনটি নীচের চিত্রটিতে দেখানো হয়েছে।

অপারেশন পুশ করুন

অপারেশন পুশ করুন

স্ট্যাকের উপাদানগুলি মুছতে আমাদের পপ অপারেশনটি ব্যবহার করতে হবে। সুতরাং কেবল পপ উল্লেখ করুন () পপটিতে যুক্তিগুলি লিখবেন না কারণ ডিফল্টরূপে এটি শীর্ষ উপাদানটিকে মুছে দেয়। প্রথম ‘ই’ উপাদানটি পরবর্তী ‘ডি’ উপাদান… .. ’এ’ মুছে ফেলা হয়। শীর্ষস্থানীয় উপাদানগুলি মুছে ফেলা হলে শীর্ষের মানটি হ্রাস পায়। যখন শীর্ষ = -1 স্ট্যাকটি আন্ডারফ্লো ইঙ্গিত করে। পপ অপারেশন নীচের চিত্রে প্রদর্শিত হয়।

পিওপি অপারেশন

পিওপি অপারেশন

সুতরাং এটি পুশ এবং পপ অপারেশন ব্যবহার করে কীভাবে উপাদানগুলি স্ট্যাকের মধ্যে সন্নিবেশ করা এবং মুছে ফেলা হয় তার ব্যাখ্যা।

অ্যাপ্লিকেশন

স্ট্যাক / স্ট্যাক পয়েন্টারের অ্যাপ্লিকেশনগুলি হ'ল

  • স্ট্রিং বিপরীত
  • ভারসাম্য প্রথম বন্ধনী
  • উল্টে / ফিঙ্গার
  • অ্যাক্টিভেশন রেকর্ডগুলির জন্য সিস্টেম স্ট্যাক
  • ইনফিক্স, উপসর্গ, পোস্টফিক্স, অভিব্যক্তি

FAQs

1)। বাহুতে স্ট্যাক পয়েন্টার কী?

এআরএমের সক্রিয় স্ট্যাকের পয়েন্টার হিসাবে ব্যবহৃত স্ট্যাক পয়েন্টার রেজিস্টার (আর 13)।

2)। স্ট্যাক পয়েন্টারটি কেন 16 বিট?

পূর্ববর্তী অবস্থান সংরক্ষণ করার জন্য স্ট্যাক পয়েন্টার (এসপি) এবং প্রোগ্রামের কাউন্টার (পিসি) ব্যবহার করা হয়েছে এবং মেমরির অবস্থানের ঠিকানাটি 16 বিট, সুতরাং স্ট্যাক পয়েন্টার (এসপি) 16 বিটেরও হয়।

3)। স্ট্যাক পয়েন্টারের ভূমিকা কী?

স্ট্যাক পয়েন্টার (এসপি) এর ভূমিকা হ'ল স্ট্যাকের উপাদানগুলির শীর্ষটি নির্দেশ করা।

4)। 8085 সালে কোন স্ট্যাক ব্যবহৃত হয়?

8085-এ ব্যবহৃত স্ট্যাক লাস্ট ইন ফার্স্ট আউট (LIFO)।

5)। স্ট্যাক পয়েন্টার একটি রেজিস্টার?

হ্যাঁ, স্ট্যাক পয়েন্টার (এসপি) হ'ল একটি ঠিকানা নিবন্ধ যা সর্বদা স্ট্যাকের উপাদানটির শীর্ষকে নির্দেশ করে।

এই নিবন্ধে কি

প্রস্তাবিত
এই ওয়্যারলেস স্পিকার সার্কিট করুন
এই ওয়্যারলেস স্পিকার সার্কিট করুন
সাধারণ ছায়া সেন্সর অ্যালার্ম সার্কিট
সাধারণ ছায়া সেন্সর অ্যালার্ম সার্কিট
পাসওয়ার্ড নিয়ন্ত্রিত এসি মেন চালু / বন্ধ রয়েছে
পাসওয়ার্ড নিয়ন্ত্রিত এসি মেন চালু / বন্ধ রয়েছে
রিং অসিলেটর কী: কাজ এবং এর প্রয়োগসমূহ
রিং অসিলেটর কী: কাজ এবং এর প্রয়োগসমূহ
পেলিট বার্নার কন্ট্রোলার সার্কিট
পেলিট বার্নার কন্ট্রোলার সার্কিট
একটি LM380 অডিও পরিবর্ধক কার্যকারীকরণ এবং এর অ্যাপ্লিকেশনগুলি কী
একটি LM380 অডিও পরিবর্ধক কার্যকারীকরণ এবং এর অ্যাপ্লিকেশনগুলি কী
দুটি মোটর ব্যবহার করে ওভারিনিটি জেনারেটর তৈরি করা
দুটি মোটর ব্যবহার করে ওভারিনিটি জেনারেটর তৈরি করা
টাইমার ও টিপস সহ ব্যাটারি চার্জার
টাইমার ও টিপস সহ ব্যাটারি চার্জার
সূচকগুলির ধরণ, শ্রেণিবিন্যাস এবং তারা কীভাবে কাজ করে
সূচকগুলির ধরণ, শ্রেণিবিন্যাস এবং তারা কীভাবে কাজ করে
এক নজরে ব্যাখ্যা সহ বৈদ্যুতিক প্রকল্পের প্রতীক
এক নজরে ব্যাখ্যা সহ বৈদ্যুতিক প্রকল্পের প্রতীক
পিআইআর সেন্সর সার্কিট এবং মডিউল কাজ
পিআইআর সেন্সর সার্কিট এবং মডিউল কাজ
ইনভার্টার: প্রকার, সার্কিট ডায়াগ্রাম এবং এর অ্যাপ্লিকেশন
ইনভার্টার: প্রকার, সার্কিট ডায়াগ্রাম এবং এর অ্যাপ্লিকেশন
ইঞ্জিনিয়ারিং শিক্ষার্থীদের জন্য চিত্র প্রক্রিয়াকরণ প্রকল্পসমূহ
ইঞ্জিনিয়ারিং শিক্ষার্থীদের জন্য চিত্র প্রক্রিয়াকরণ প্রকল্পসমূহ
20 ওয়াটের বৈদ্যুতিন ব্যালাস্ট সার্কিটের মূল অংশ
20 ওয়াটের বৈদ্যুতিন ব্যালাস্ট সার্কিটের মূল অংশ
মাইক্রোকন্ট্রোলার ভিত্তিক কলার আইডি এবং ডিএস 1232 এর ব্যবহার
মাইক্রোকন্ট্রোলার ভিত্তিক কলার আইডি এবং ডিএস 1232 এর ব্যবহার
একটি LED চালু / বন্ধ ফিডিং - আরডুইনো বুনিয়াদি
একটি LED চালু / বন্ধ ফিডিং - আরডুইনো বুনিয়াদি