একটি কম্পাইলার কী, বা কীভাবে একটি কম্পিউটারকে বোঝা যায় যে আপনি এটি থেকে কী চান?

সুচিপত্র:

একটি কম্পাইলার কী, বা কীভাবে একটি কম্পিউটারকে বোঝা যায় যে আপনি এটি থেকে কী চান?
একটি কম্পাইলার কী, বা কীভাবে একটি কম্পিউটারকে বোঝা যায় যে আপনি এটি থেকে কী চান?

ভিডিও: একটি কম্পাইলার কী, বা কীভাবে একটি কম্পিউটারকে বোঝা যায় যে আপনি এটি থেকে কী চান?

ভিডিও: একটি কম্পাইলার কী, বা কীভাবে একটি কম্পিউটারকে বোঝা যায় যে আপনি এটি থেকে কী চান?
ভিডিও: 😍 একাধিক PDF ফাইলকে ১টি ফাইলে নিয়ে আসুন ! Combine Multiple PDF Files into One File 2024, মে
Anonim

একটি প্রোগ্রাম তৈরির চূড়ান্ত পর্যায়ে একটি প্রোগ্রামিং ভাষা (C/C++, Pascal, ইত্যাদি) একটি নিম্ন-স্তরের মেশিন ভাষায় লেখা একটি অ্যালগরিদম অনুবাদ করা। এটি এই কারণে যে কোনও কাজ সম্পাদন করার জন্য, কম্পিউটারগুলিকে এমন একটি ভাষাতে কমান্ড দিতে হবে যা তারা বোঝে, বাইনারির কাছাকাছি এবং আদিম ডেটা স্ট্রাকচার (বিট, বাইট বা শব্দ) দিয়ে কাজ করে। উচ্চ-স্তরের ভাষার ডোমেন-নির্দিষ্ট বিবৃতিগুলিকে বাইনারি কোডে অনুবাদ করার প্রক্রিয়াটিকে অনুবাদ বলা হয়। দুটি অনুবাদ পদ্ধতি আছে - সংকলন এবং ব্যাখ্যা।

কম্পাইলার হয়
কম্পাইলার হয়

কম্পাইলার - এটা কি?

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

সংকলক এবং দোভাষী - মিল এবং পার্থক্য

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

আপনি বলতে পারেন যে কম্পাইলার এবং ইন্টারপ্রেটার হল ল্যাঙ্গুয়েজ প্রসেসর যা কম্পিউটারকে প্রোগ্রামার কর্তৃক প্রদত্ত কমান্ড চিনতে এবং কার্যকর করতে দেয়।

কম্পাইলার শ্রেণীবিভাগ

কম্পাইলার একটি প্রোগ্রাম
কম্পাইলার একটি প্রোগ্রাম

কম্পাইলারগুলি মূলত তাদের ব্যবহারিক প্রয়োগের ক্ষেত্রের সাথে সম্পর্কিত বৈশিষ্ট্যগুলির দ্বারা শ্রেণীবদ্ধ করা হয়৷

ভেক্টরাইজিং কম্পাইলার হল একটি ইউটিলিটি যা সোর্স কোডকে অবজেক্ট কোডে অনুবাদ করে এবং ভেক্টর প্রসেসর দিয়ে সজ্জিত কম্পিউটারের জন্য অভিযোজিত হয়৷

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

ইনক্রিমেন্টাল কম্পাইলার হল একটি ল্যাঙ্গুয়েজ প্রসেসর যা সোর্স কোডের আলাদা টুকরো এবং এতে সংযোজন পুনরায় অনুবাদ করে। যাইহোক, এটি সম্পূর্ণ অ্যাপ্লিকেশন পুনরায় কম্পাইল করা এড়িয়ে যায়।

একটি ব্যাখ্যামূলক (স্টেপিং) কম্পাইলার এমন একটি ইউটিলিটি যা পর্যায়ক্রমে প্রতিটি বিবৃতি বা উচ্চ-স্তরের সোর্স কোডের কমান্ডের স্বাধীন সংকলন সম্পাদন করে।

সংকলকদের একটি কম্পাইলার হল একজন অনুবাদক যা একটি প্রোগ্রামিং ভাষার জন্য একটি আনুষ্ঠানিক বিবরণ গ্রহণ করতে এবং স্বাধীনভাবে যেকোনো ভাষার জন্য একটি কম্পাইলার তৈরি করতে সক্ষম৷

কম্পাইলার এবং দোভাষী
কম্পাইলার এবং দোভাষী

ডিবাগ কম্পাইলার আপনাকে সোর্স কোড লেখার সময় কিছু ধরণের সিনট্যাক্স ত্রুটি খুঁজে পেতে এবং ঠিক করতে দেয়

একটি আবাসিক কম্পাইলার RAM-তে একটি স্থায়ী স্থান দখল করে এবং তাই বিভিন্ন কাজের দ্বারা পুনরায় ব্যবহারযোগ্য।

স্ব-সংকলিত কম্পাইলারটি অনুবাদের মতো একই ভাষায় লেখা হয়েছে।

সর্বজনীন কম্পাইলারটি ইনপুট ভাষার শব্দার্থগত এবং সিনট্যাকটিক প্যারামিটারের একটি আনুষ্ঠানিক বর্ণনার উপর ভিত্তি করে তৈরি। এই জাতীয় ইউটিলিটির প্রধান উপাদানগুলি হল মূল, সিনট্যাকটিক এবং শব্দার্থিক লোডার৷

কম্পাইলার ডিভাইস

একটি কম্পাইলার এবং একটি লিঙ্কার যেকোন কম্পাইলারের হৃদয়ে থাকে। প্রায়শই, কম্পাইল করার সময়, একটি বাহ্যিক লিঙ্কার ব্যবহার করা হয় এবং কম্পাইলার নিজেই শুধুমাত্র অনুবাদ ফাংশন সম্পাদন করে। এটিও ঘটে যে কম্পাইলারটি এক ধরণের ম্যানেজার প্রোগ্রাম হিসাবে প্রয়োগ করা হয় যা অনুবাদক (বা অনুবাদক, যদি সোর্স কোড লেখার সময় বিভিন্ন প্রোগ্রামিং ভাষা ব্যবহার করা হয়) এবং লিঙ্কারের সাথে যুক্ত থাকে এবং প্রয়োজনে তাদের সম্পাদন শুরু করে।

প্রোগ্রামিং ভাষা এবং অনুবাদ পদ্ধতি

ভাষা কম্পাইলার
ভাষা কম্পাইলার

যেকোন প্রোগ্রামিং ভাষায় লিখিত একটি প্রোগ্রাম সংকলিত এবং ব্যাখ্যা উভয়ই হতে পারে তা সত্ত্বেও, অনেক উচ্চ-স্তরের ভাষার অনুবাদের এক বা অন্য পদ্ধতির প্রবণতা রয়েছে। সুতরাং, সি ভাষাটি মূলত সংকলনের জন্য ডিজাইন করা হয়েছিল, এবং জাভা - লিখিত প্রোগ্রামের ব্যাখ্যার জন্য। বিকশিত হচ্ছেসি কম্পাইলারগুলি বেশ সহজ, এটির তুলনামূলকভাবে নিম্ন স্তরের এবং অল্প সংখ্যক কাঠামোগত উপাদানগুলির জন্য ধন্যবাদ৷

কম্পাইলার এবং ইন্টারপ্রেটারের সুবিধা এবং অসুবিধা। অ্যাপ্লিকেশন

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

প্রস্তাবিত: