অনুবাদক প্রোগ্রাম
অ্যাসেম্বলি বা উচ্চতর ভাষায় লিখিত প্রোগ্রামকে সোর্স প্রোগ্রাম এবং মেশিনের ভাষায় অনুবাদ করা প্রোগ্রামকে
অবজেক্ট প্রোগ্রাম বলা হয়। অ্যাসেম্বলি ও হাই লেভেল ভাষায় লিখিত প্রোগ্রাম কম্পিউটার সরাসরি বুঝতে পারে না।
কম্পিউটার কেবল মেশিন ভাষা বুঝতে পারে। তাই সোর্স প্রোগ্রামকে চালানোর আগে কোনো অনুবাদক প্রোগ্রামের মাধ্যমে
মেশিনের ভাষায় অনুবাদ করতে হয়। সোর্স প্রোগ্রামকে অবজেক্ট প্রোগ্রামে পরিণত করার জন্য যে প্রোগ্রাম ব্যবহার করা হয়
তাকে অনুবাদক প্রোগ্রাম বলে। মেশিনের ভাষায় প্রোগ্রাম অনুবাদ করার জন্য ০ এবং ১ এই দু’টি বাইনারি ডিজিট ব্যবহার
করা হয়। সোর্স প্রোগ্রামকে অনুবাদ করার জন্য তিন ধরনের অনুবাদক প্রোগ্রাম আছে। যেমন Ñ
১। কম্পাইলার (Compiler)
২। অ্যাসেম্বলার (Assmebler) I ও
৩। ইন্টারপ্রেটার Interpreter))
কম্পাইলার (Compiler)
কম্পাইলার হল এমন একটি অনুবাদক যা সোর্স প্রোগ্রামকে একসাথে সম্পূর্ণরূপে মেশিনের ভাষায় অনুবাদ করে একটি
অবজেক্ট প্রোগ্রাম তৈরি করে এবং একটি এক্সিকিউশন ফাইল (.বীব) তৈরি করে। এখানকার এক্সিকিউশন ফাইল অত্যন্ত
দ্রæততার সাথে এক্সিকিউট হয়ে থাকে। ফলে প্রোগ্রামিং প্রক্রিয়া অত্যন্ত দ্রæততর হয় এবং প্রোগ্রামারকে নিজ হাতে কোন
অনুবাদকের কাজ করতে হয় না।
ভিন্ন ভিন্ন উচ্চতর ভাষার প্রোগ্রামের জন্য ভিন্ন ভিন্ন কম্পাইলার ব্যবহৃত হয়। কারণ কোন নির্দিষ্ট কম্পাইলার একটি মাত্র
উচ্চতর ভাষার প্রোগ্রামকে কম্পাইল করতে পারে। যেমন- যে কম্পাইলার ঈঙইঙখ প্রোগ্রামকে কম্পাইল করতে পারে
সেই কম্পাইলার বেসিক প্রোগ্রাম কম্পাইল করতে পারে না। কম্পাইলার অনুবাদ করা ছাড়াও উৎস প্রোগ্রামের গুণাগুণও
বিচার করতে পারে।
কম্পাইলারের প্রধান কাজ
১। উৎস প্রোগ্রামকে অনুবাদ করে অবজেক্ট প্রোগ্রাম তৈরি করা।
২। প্রোগ্রামের সঙ্গে প্রয়োজনীয় রুটিন যোগ করা। রুটিন হলো প্রোগ্রামের ছোট অংশ যাতে কোনো নির্দিষ্ট কাজ করার
জন্য নির্দেশ দেয়া থাকে।
৩। প্রোগ্রামে কোনো ভুল থাকলে তা জানানো।
৪। প্রোগ্রামের যেকোনো ভুল-ত্রæটি সংশোধন করা।
উৎস প্রোগ্রাম অনুবাদক
কম্পাইলার প্রোগ্রাম অবজেক্ট প্রোগ্রাম
ইনপুট সিপিইউ আউটপুট
ইনপুট সিপিইউ আউটপুট
ডাটা অবজেক্ট প্রোগ্রাম
তথ্য বা ইনফরমেশন
চিত্র ৮.৪.১ : সোর্স প্রোগ্রামকে কম্পাইল করার প্রক্রিয়া
অ্যাসেম্বলার
অ্যাসেম্বলার হচ্ছে অ্যাসেম্বলি ভাষায় লিখিত উৎস প্রোগ্রাম অর্থাৎ নেমোনিক কোডকে মেশিনের ভাষায় লিখিত অবজেক্ট
প্রোগ্রামে রূপান্তর করা এক ধরনের অনুবাদক প্রোগ্রাম। এ ভাষার অন্যতম কাজ হচ্ছে প্রধান মেমোরিতে রক্ষিত অ্যাসেম্বলি
ভাষার সব নির্দেশ ঠিক আছে কিনা তা ব্যবহারকারীকে জানানো। এ ভাষার প্রত্যেকটি নির্দেশকে অ্যাসেম্বলার মেশিন
ভাষার একটি নির্দেশে পরিণত করে। ভুল সংশোধনের পর এ ভাষা পুনরায় প্রথম নির্দেশ থেকে অনুবাদের কাজ শুরু করে।
অ্যাসেম্বলার অ্যাসেম্বলি ভাষা মেশিন ভাষা
চিত্র ৮.৪.২ : সোর্স প্রোগ্রামকে কম্পাইল করার প্রক্রিয়া
অ্যাসেম্বলারের প্রধান কাজ
১। নেমোনিক কোডকে মেশিনের ভাষায় রূপান্তর করা।
২। সব নির্দেশ এবং ডেটা প্রধান মেমোরিতে জমা রাখা।
৩। প্রোগ্রামে কোনো ভুল থাকলে তা জানানো।
৪। সব তথ্য ও নির্দেশ মেমরিতে রাখা।
ইন্টারপ্রেটার InterPreter
ইন্টারপ্রেটারও কম্পাইলারের মতো উচ্চতর ভাষাকে মেশিন ভাষায় রূপান্তর করে, তবে কম্পাইলার যেমন প্রথমে সোর্স
প্রোগ্রামকে অবজেক্ট প্রোগ্রামে রূপান্তর করে এবং শেষে ফলাফল প্রদান করে কিন্তু ইন্টারপ্রেটার সোর্স প্রোগ্রামকে অবজেক্ট
প্রোগ্রামে রূপান্তর করে না। ইন্টারপ্রেটার এক লাইন করে সম্পাদন করে এবং তাৎক্ষণিক ফলাফল প্রদান করে।
ইন্টারপ্রেটারের মাধ্যমে প্রোগ্রামের ভুল-ত্রæটি সনাক্ত ও সংশোধন করার ক্ষেত্রে সময় কম লাগে। তবে ইন্টারপ্রেটারের
অসুবিধা হচ্ছে অনুবাদের ক্ষেত্রে এটি ধীর গতি সম্পন্ন এবং প্রতিবার প্রোগ্রাম নির্বাহের ক্ষেত্রে প্রতিটি স্টেটমেন্ট নতুন করে
মেশিন ভাষায় রূপান্তর করতে হয়।
কম্পাইলার/ইন্টারপ্রেটার
উচ্চ স্তরের ভাষা, অতি উচ্চ স্তরের ভাষা মেশিন ভাষা
চিত্র ৮.৪.৩ : সোর্স প্রোগ্রামকে ইন্টারপ্রেটেশন করার প্রক্রিয়া
৮.৪.২ কম্পাইলার ও ইন্টারপ্রেটারের মধ্যে পার্থক্য
কম্পাইলার ইন্টারপ্রেটার
১। সম্পূর্ণ প্রোগ্রামটিকে একসাথে অনুবাদ করে। ১। এক লাইন এক লাইন করে অনুবাদ করে।
২। এটি বড় আকৃতির প্রোগ্রাম। ২। এটি ছোট আকৃতির প্রোগ্রাম।
৩। প্রোগ্রাম নির্বাহের গতি তুলনামূলক দ্রæত। ৩। গতি তুলনামূলক কম।
৪। কাজ করতে প্রধান মেমোরিতে বেশি জায়গা
প্রয়োজন হয়।
৪। প্রধান মেমোরিতে কম জায়গা প্রয়োজন হয়।
৫। ডিবাগিং বা প্রোগ্রামের ভুল-ত্রæটি সনাক্ত ও ৫। ভুল-ত্রæটি সনাক্ত ও সংশোধন করার ক্ষেত্রে
সংশোধন করার ক্ষেত্রে সময় বেশি লাগে। সময় কম লাগে।
৬। প্রোগ্রামের সবগুলো ভুল এক সাথে প্রদর্শন
করে।
৬। প্রতিটি লাইনের ভুল প্রদর্শন করে এবং ভুল
মাত্রই অনুবাদের কাজ বন্ধ করে দেয়।
অ্যাসেম্বলার, কম্পাইলার ও ইন্টারপ্রেটারের সুবিধা ও অসুবিধার তালিকা তৈরি
করুন।
সারসংক্ষেপ
অ্যাসেম্বলি বা উচ্চতর ভাষায় লিখিত প্রোগ্রামকে সোর্স প্রোগ্রাম বলা হয় । আর মেশিনের ভাষায় অনুবাদ করা
প্রোগ্রামকে অবজেক্ট প্রোগ্রাম বলা হয়। যে প্রোগ্রাম সোর্স প্রোগ্রামকে অবজেক্ট প্রোগ্রামে রূপান্তরিত করে তাকে অনুবাদক
প্রোগ্রাম বলে। অনুবাদক প্রোগ্রাম অ্যাসেম্বলার, কম্পাইলার ও ইন্টারপ্রেটার এই তিন ধরনের হয়ে থাকে। অ্যাসেম্বলার
শুধুমাত্র অ্যাসেম্বলি ভাষায় লিখিত প্রোগ্রামকে অবজেক্ট প্রোগ্রামে রূপান্তরিত করে। অন্যদিকে কম্পাইলার ও ইন্টারপ্রেটার
উচ্চ স্তরের ভাষায় লিখিত প্রোগ্রামকে অবজেক্ট প্রোগ্রামে রূপান্তরিত করে।
সঠিক উত্তরের পাশে টিক () চিহ্ন দিন
১। সোর্স প্রোগ্রামকে অনুবাদ করার জন্য কত ধরনের অনুবাদক প্রোগ্রাম আছে?
ক) ২ খ) ৩
গ) ৪ ঘ) ৫
২। কোনটি এক সাথে প্রোগ্রামকে সম্পূর্ণরূপে মেশিনের ভাষায় অনুবাদ করে?
ক) কম্পাইলার খ) ইন্টারপ্রেটার
গ) অ্যাসেম্বলার ঘ) সবগুলো
FOR MORE CLICK HERE
এইচএসসি বাংলা নোট ১ম পত্র ও ২য় পত্র
ENGLISH 1ST & SECOND PAPER
এইচএসসি আইসিটি নোট
এইচএসসি অর্থনীতি নোট ১ম পত্র ও ২য় পত্র
এইচএসসি পৌরনীতি ও সুশাসন ১ম পত্র
এইচএসসি পৌরনীতি নোট ২য় পত্র
এইচএসসি সমাজকর্ম নোট ১ম পত্র
এইচএসসি সমাজকর্ম নোট ২য় পত্র
এইচএসসি সমাজবিজ্ঞান নোট ১ম পত্র ও ২য় পত্র
এইচএসসি ইতিহাস নোট ১ম পত্র
এইচএসসি ইতিহাস নোট ২য় পত্র
এইচএসসি ইসলামের ইতি. ও সংস্কৃতি নোট ১ম পত্র
এইচএসসি ইসলামের ইতি. ও সংস্কৃতি নোট ২য় পত্র
এইচএসসি যুক্তিবিদ্যা ১ম পত্র ও ২য় পত্র
এইচএসসি ভূগোল ও পরিবেশ নোট ১ম পত্র ও ২য় পত্র
এইচএসসি ইসলামিক স্টাডিজ ১ম ও ২য় পত্র