ব্যাখ্যা
ইন্টারপ্রেটার (Interpreter)
- যে অনুবাদক প্রোগ্রাম হাই-লেভেল ভাষার উৎস প্রোগ্রামকে এক লাইন এক লাইন করে মেশিন ভাষার অবজেক্ট প্রোগ্রামে অনুবাদ করে, তাকে ইন্টারপ্রেটার বলে।
- একটি লাইন নির্বাহ শেষ হলে ইন্টারপ্রেটার একইভাবে সোর্স প্রোগ্রামের পরবর্তী লাইনে গিয়ে মেশিন ভাষায় অনুবাদ করে তা নির্বাহ করে।
- ইন্টারপ্রেটার প্রোগ্রাম নির্বাহ (রান) করার সময় প্রোগ্রামের ভুল দেখা ও সংশোধন করার সুযোগ দেয়। একটি একটি লাইন করে অনুবাদ করে বিধায় এতে তুলনামূলকভাবে সময় বেশি লাগে।
- ইন্টারপ্রেটার ল্যাঙ্গুয়েজ দ্বারা ব্যবহৃত হয়।
- যেমন-জাভা, পাইথন।
তিন ধরনের অনুবাদক প্রোগ্রাম রয়েছে।যথা-
১. কম্পাইলার (Compiler),
২. ইন্টারপ্রেটার (Interpreter),
৩. অ্যাসেম্বলার (Assembler)।
• কম্পাইলার (Compiler)
- যে অনুবাদক প্রোগ্রাম হাই-লেভেল ল্যাঙ্গুয়েজে লেখা সম্পূর্ণ প্রোগ্রামটিকে একসাথে পড়ে এবং একসাথে অনুবাদ করে, তাকে কম্পাইলার বলা হয়।
- কম্পাইলার চালনার জন্য বেশি পরিমাণ মেমোরির প্রয়োজন হয়।
- কম্পাইলার যেহেতু পুরো প্রোগ্রামটি একবারে কম্পাইল করে, তাই প্রোগ্রামে কোনো ভুল থাকলে একসাথে তা জানিয়ে দেয়।
- সে কারণে ভুলগুলো শুদ্ধ করা একটু জটিল। তবে কম্পাইল করার পর প্রোগ্রামগুলো অনেক দ্রুতগতিতে কাজ করে।
- ভিন্ন ভিন্ন ল্যাঙ্গুয়েজের জন্য ভিন্ন ভিন্ন কম্পাইলার থাকে।
- যেমন- সি ল্যাঙ্গুয়েজের জন্য Turbo C/C++, Codeblocks, Dev C, Borland C++ ইত্যাদি কম্পাইলার রয়েছে।
• অ্যাসেম্বলার (Assembler)
- অ্যাসেম্বলি ভাষায় লিখিত প্রোগ্রামকে মেশিন ল্যাঙ্গুয়েজে অনুবাদ করার জন্য ব্যবহৃত অনুবাদককে অ্যাসেম্বলার বলা হয়।
- এটি সব ডেটা ও নির্দেশ প্রধান মেমোরিতে রাখে এবং প্রোগ্রামের কোথাও কোনো ভুল থাকলে এরর মেসেজ দিয়ে জানিয়ে দেয়।
- উদাহরণ: GAS, GNU assemblers.
উৎস: তথ্য ও যোগাযোগ প্রযুক্তি: একাদশ-দ্বাদশ শ্রেণি মাহবুবুর রহমান।