প্রোগ্রামিং ভাষা ও কম্পাইলার

প্রোগ্রামিং এর প্রাথমিক ধারণা

আপনার মনে এই প্রশ্ন আসা স্বাভাবিক যে, সি এর মত হাই লেভেল ল্যাঙ্গুয়েজে লিখা একটি প্রোগ্রাম কম্পিউটার কিভাবে বুঝতে পারে? কেননা কম্পিউটার তো শুধু ০ আর ১ ছাড়া কিছু বোঝেনা। নাহয় বুঝলাম সব সংখ্যা আর টেক্সট কেও ০ আর ১ দিয়ে বোঝানো হয়েছে ASCII কোডের মাধ্যমে। কিন্তু সি ভাষা তো শুনলাম নাকি অনেকটা মানুষের বোধগম্য ভাষার মত করে লিখা যায়। তো কম্পিউটার সেটা কিভাবে বোঝে?

ঠিক ধরেছেন। কম্পিউটার আসলে ০ আর ১ ছাড়া কিছু বোঝেনা। কিন্তু ওই যে এসেম্বলি ল্যাঙ্গুয়েজ যেভাবে একেকটা ইন্সট্রাকশন একেকটা শব্দ লিখে বোঝানো হত আর এসেম্বলার নামের মেশিন ল্যাঙ্গুয়েজ এ লিখা প্রোগ্রামটি সেটি ০ আর ১ এর ইন্সট্রাকশন সেট এ পরিবর্তন করে দিত, ঠিক তেমনি, সি ল্যাঙ্গুয়েজ এ আমরা অনেকটা বোধগম্য ভাষায় যেটা লিখে দেই, সেটাকে কম্পিউটারের ভাষায় ট্রান্সলেট করে দেয় আরেকটি এসেম্বলি ভাষায় লিখা প্রোগ্রাম যেটি লিখেছিলেন ডেনিস রিচি নামের এক কম্পিউটার বিজ্ঞানী, যার নাম দেয়া হয়েছিল কম্পাইলার। মূলত সি ভাষার মুল বেসিক অংশের জন্য কম্পাইলার লিখা হয়েছিল এসেম্বলি ভাষায়, তারপর বাকি অংশ লিখা হয়েছিল এই সি ভাষার বেসিক অংশ দিয়েই। মজার না?

সুতরাং আমরা জানলাম কম্পাইলার এর কাজ হল সি ভাষায় লিখিত প্রোগ্রামকে কম্পিউটারের বোধগম্য ভাষায় ট্রান্সলেট করে দেয়া। সি ভাষায় প্রোগ্রাম লিখতে গিয়ে আপনি যদি এই ভাষার নিয়ম কানুন ঠিকমত না মেনে লিখেন অথবা অজান্তে ভুল করে বসেন, তাহলে কম্পাইলার আপনাকে জানিয়ে দেবে আপনার প্রোগ্রাম বা কোডটির কোন লাইনে কোথায় ভুল হয়েছে। কম্পাইলার যে ভুল ধরতে পারে তাকে বলা হয় কম্পাইলেশন এরর (Compilation Error)।