ব্লগ একাত্তর-

8080 মাইক্রোপ্রসেসরের বিভিন্ন প্রকার এ্যাড্রেসিং মোডের বর্ণনা। পর্ব-১

বিভিন্নভাবে ইন্সট্রাকশনের অপারেন্ডকে স্পেসিফাই করা যায়। অপারন্ডেকে স্পেসিফাই করার কৌশলকে এ্যাড্রেসিং মোড বলা হয়। এখানে উল্লেখ্য যে, ইন্সট্রাকশন সেটের শ্রেণী বিভাগ করা ইন্সট্রকাশনের অপকোডের উপর ভিত্তি করে এবং এ্যাড্রেসিং মোডে শ্রণী বিভাগ করা হয় ইন্সটপ্রাকশনের অপারেন্ডকে কিভাবে স্পেসিফাই করা হয় তার উপর ভিত্তি করে।

 

নিন্মে 8080 মাইক্রোপ্রসেসরের বিভিন্ন প্রকার এ্যাড্রেসিং মোডের বর্ণনা করা হল-

 

১। রেজিস্টার এবং ইমিডিয়েট ডাটা অপারেন্ড এ্যাড্রেসিং মোড:

রেডিস্টার ও ইমিডিয়েট ডাটা অপারেন্ড এ্যাড্রেসিং মোডে ইন্সট্রাকশনের অপারেন্ড হিসাবে রেজিস্টার বা ইমিডিয়েট ডাটা ব্যবহৃত হয়। এধরনের এ্যাড্রেসিং মোডকে ২ ভাগে ভাগ করা যায়। যথা-

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

খ) ইমিডিয়েট ডাটা অপারেন্ড এ্যাড্রেসিং মোড।

 

ক) রিজিষ্টার অপারেন্ড এ্যাড্রেসিং মোডঃ

৮ বিট বা ১৬ বিট ডাটা সোর্স রেজিষ্টার বা মেমোরী হেতে ডেস্টিনেশন রেজিষ্টার বা মেমোরীতে ট্রান্সফার হতে পারে। এই ধরনের মোডে সোর্স, ডেষ্টিনেশন বা উভয় অপারেন্ড হিসাবে মাইক্রোপ্রসেসরের রেজিষ্টার ব্যবহৃত হতে পারে। উদাহরণস্বরুপ, MOV DX, CX ইন্সট্রাকশনটির কথা বলা যায়। এক্ষেত্রে সোর্স এবং ডেষ্টিনেশ অপারেন্ড ২টিই MOV DX, CX ইন্সট্রাকশনের কথা ধরা যাক, এক্ষেত্রেও সোর্স এবং ডেষ্টিনেশন অপারেন্ড ২টি রিজিষ্টার মোড রয়েছে। এক্ষেত্রে সোর্স রেজিষ্টার DL এর ৮ বিটের কন্টেন্ট CL রেজিষ্টারে কপি হবে। এখানে উল্লেখ্য যে, সোর্স এবং ডেষ্টিনেশন হিসাবে ব্যবহৃত রেজিষ্টার সাইজ একই হতে হবে। যেমন- MOV BX, CH ইন্সট্রাকশনটি গ্রহনযোগ্য নয়।

 

খ) ইমিডিয়েট ডাটা অপারেন্ড এ্যাড্রেসিং মোডঃ

ইমিডিয়েট ৮ বিট বা ১৬ বিট ডাটা ডেষ্টিনেশন রেজিষ্টার বা মেমোরী লোকেশনে ট্রান্সফার হতে পারে। এই ধরনের মোডে ৮/১৬ বিটের ডাটা ইনষ্ট্রাকশনের অপারেন্ড হিসাবে উল্লেখ করা থাকে। উদারণস্বরুপ MOV CL, 03H ইন্সট্রাকশনটির কথা বলা যায়। উদাহরণটিতে ৮ বিট ডাটা (03H) CL রেজিষ্টারে কপি হবে।

২। মেমোরী অপারেন্ড এ্যাড্রেসিং মোডঃ

রেজিষ্টার এবং ইমিডিয়েট ডাটা অপারেন্ড এ্যাড্রেসিং-এর ক্ষেত্রে এক্সিকিউশন ইউনিট সরাসরি সব রেজিষ্টার এবং ডাটাকে এ্যাকসেস করতে পারে। কিন্তু মেমোরী অপারেন্ড এ্যাড্রেসিং-এর ক্ষেত্রে এক্সিকিউশন ইউনিট সরাসরি এ্যাকসেস করতে পারে না। এ ক্ষেত্রে ইহা মেমোরী অপরেন্ডকে অপারেট করার জন্য বাস েইন্টারফেস ইউনিটকে ব্যবহার করে থাকে। উদাহরণস্বরুপ বলা যায়, যখন এক্সিকিউশন ইউনিটের মেমোরী লোকেশন এ্যাসেস করার প্রয়োজন হয়, তখন ইহা বাস ইন্টারফেস ইউনিটকে অপসেট এ্যাড্রেস পাঠায়, যাকে ইফেক্টিভ এ্যাড্রেসও বলা হয়। এখানে উল্লেখ্য যে, ইফেক্টিভ এ্যাড্রেস হচ্ছে প্রকৃতপক্ষে নিদিষ্ট মেমোরী সেগমেন্টের বেস হতে প্রয়োজনীয় লোকেশনের ডিসপ্লেসমেন্ট বা দূরত্ব। আমরা জানি, বাস ইন্টারফেস ইউনিট ২০ বিটের ফিজিক্যাল এ্যাড্রেস জেনারেটর করে, যা নির্দিষ্ট সেগমেন্ট রেজিষ্টারের কন্টেন্ট 10H দিয়ে গুণ হয়ে বা চার বিট লেফট শিফটেড হয়ে অফসেট এ্যাড্রেস বা ইফেক্টিভ এ্যাড্রেসের সাথে যোগ হয়ে নির্ধারিত হয়ে থাকে।  8080 মাইক্রোপ্রসেসর মেমোরী এ্যাকসেস করার সময় সেগমেন্ট রেজিষ্টার ব্যবহার করে থাকে। প্রত্যেকটি মেমোরী এ্যাড্রেসিং ইন্সট্রাকশনের ক্ষেত্রে ইন্টেল কর্র্তৃক ডেফল্ট সেগমেন্ট রেজিষ্টার ব্যবহৃত হয়। ইফেক্টিভ এ্যাড্রেসের ক্ষেত্রে সর্বচ্চ ৩টি অংশ ( বেস+ইনডেক্স+ডিসপ্লেসমেন্ট) মিলিত হয়ে ইফেক্টিব এ্যাড্রেস জেনারেট করতে পারে। অর্থাৎ ইফেক্টিভ এ্যাড্রেস= বেস+ইনডেক্স+ডিসপ্লেসমেন্ট হতে পারে। তবে এ ক্ষেত্রে যে কোন একটি বা দুইটি বা তিনটি মিলে ইফেক্টিভ এ্যাড্রেস হতে পারে।

 

নিচে মেমোরী অপারেন্ড এ্যাড্রেসিং এর ৬টি মোডের সংক্ষিপ্ত বর্ণন দেয়া হলো। মেমোরী অপারেন্ড এ্যাড্রেসিংসমূহ নিম্নরুপ:

 

ক) ডাইরেক্ট মেমোরী অপারেন্ড এ্যাড্রেসিং মোড,

খ) রেজিষ্টার ইনডাইরেক্ট মেমোরী অপারেন্ড এ্যাড্রেসিং মোড,

গ) বেসড মেমোরী অপারেন্ড এ্যাড্রেসিং মোড,

ঘ) ইনডেক্সড মেমোরী অপারন্ড এ্যাড্রেসিং মোড,

ঙ) বেসড ইনডেক্স মেমোরী অপারেন্ড এ্যাড্রেসিং মোড এবং

চ) ষ্ট্রিং মেমোরী অপারেন্ড এ্যাড্রেসিং মোড।

Advertisements
mm

Rony

যা জানি তা জানাতে চাই ☺

Add comment

Your Header Sidebar area is currently empty. Hurry up and add some widgets.