কম্পাইলারের ফেজ এবং পাসের মধ্যে পার্থক্য

Anonim

কম্পাইলারের মধ্যে ফেজ বনাম পাস

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

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

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

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

কম্পাইলারে একটি ফেজ কি?

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

কম্পাইলারে ফেজ এবং পাস মধ্যে পার্থক্য কি?

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