Google Play badge

مرتب کرنے والے


کمپائلرز

کمپائلر سے مراد ایک کمپیوٹر پروگرام ہے جو کمپیوٹر کوڈ کا ترجمہ کرنے کے لیے استعمال ہوتا ہے جو ایک پروگرامنگ زبان میں لکھا جاتا ہے (جسے ماخذ زبان کہا جاتا ہے) دوسری پروگرامنگ زبان میں (جسے ہدف کی زبان کہا جاتا ہے)۔ کمپائلر کی اصطلاح بنیادی طور پر ان پروگراموں کے لیے لاگو ہوتی ہے جو سورس کوڈز کو اعلیٰ سطح کی پروگرامنگ زبان سے نچلی سطح کی پروگرامنگ زبان میں ترجمہ کرتے ہیں۔ مثال کے طور پر، ایک قابل عمل پروگرام بنانے کے لیے مشین کوڈ، آبجیکٹ کوڈ یا اسمبلی لینگویج۔

یہ نوٹ کرنا ضروری ہے کہ کمپائلرز کی بہت سی مختلف اقسام ہیں۔ اگر مرتب کردہ پروگرام کسی ایسے کمپیوٹر پر چل سکتا ہے جس کا آپریٹنگ سسٹم یا سی پی یو اس سے مختلف ہے جسے کمپائلر چلاتا ہے، تو کمپائلر کو کراس کمپائلر کہا جاتا ہے۔ دوسری طرف ایک بوٹسٹریپ کمپائلر اس زبان میں لکھا جاتا ہے جسے وہ مرتب کرنا چاہتا ہے۔ ڈیکمپائلر ایک ایسا پروگرام ہے جو نچلی سطح کی زبان کو اعلی سطح کی زبان میں ترجمہ کرنے کے لیے استعمال ہوتا ہے۔ ایک پروگرام جو اعلی سطحی زبانوں کے درمیان ترجمہ کرنے کے لیے استعمال ہوتا ہے اسے سورس ٹو سورس کمپائلر کہا جاتا ہے۔ اسے ٹرانسپلر بھی کہا جا سکتا ہے۔ ایک ایسا پروگرام جو زبان کی تبدیلی کے بغیر اظہار کی شکل کا ترجمہ کرنے کا ذمہ دار ہے اسے زبان کو دوبارہ لکھنے والا کہا جاتا ہے۔ کمپائلر کمپائلر کی اصطلاح سے مراد وہ ٹولز ہیں جو نحوی تجزیہ کرنے کے لیے ذمہ دار پارسر بنانے کے لیے استعمال ہوتے ہیں۔

کمپائلر کے ذریعے کیے جانے والے کچھ آپریشنز میں شامل ہیں: پری پروسیسنگ، پارسنگ، (نحو کا ہدایت شدہ ترجمہ) سیمنٹک تجزیہ، لغوی تجزیہ، کوڈ جنریشن، کوڈ آپٹیمائزیشن اور ان پٹ پروگراموں کو انٹرمیڈیٹ نمائندگی میں تبدیل کرنا۔ مرتب کرنے والے مختلف مراحل میں ان کارروائیوں کو لاگو کرنے کے ذمہ دار ہیں جو صحیح تبدیلیوں اور ٹارگٹ آؤٹ پٹ کے لیے سورس ان پٹ کے موثر ڈیزائن کو فروغ دیتے ہیں۔ پروگرام کی خرابیاں جو مرتب کرنے والے کے غلط رویے کی وجہ سے ہوتی ہیں ان کا سراغ لگانا اور کام کرنا بہت مشکل ہو سکتا ہے۔ کمپائلر نافذ کرنے والے اس لیے کمپائلر کی درستگی کو یقینی بنانے کے لیے اہم کوششیں کرتے ہیں۔

یہ نوٹ کرنا ضروری ہے کہ مرتب کرنے والے واحد مترجم نہیں ہیں جو سورس پروگراموں کو تبدیل کرنے کے لیے استعمال ہوتے ہیں۔ ایک کمپیوٹر سافٹ ویئر جو تبدیل کرنے اور پھر اشارہ کردہ کارروائیوں کو انجام دینے کا ذمہ دار ہے اسے ترجمان کہا جاتا ہے۔ ترجمہ کا عمل کمپیوٹر کی زبانوں کے ڈیزائن کو متاثر کرتا ہے جس کی وجہ سے تشریح یا تالیف کی ترجیح ہوتی ہے۔ عملی طور پر، مرتب کرنے والوں اور مرتب شدہ زبانوں کے لیے ایک مترجم کا نفاذ تشریح شدہ زبانوں کے لیے لاگو کیا جا سکتا ہے۔

نوٹ کریں کہ کمپائلر استعمال کرتے وقت، پروگرام چلانے کے لیے دو قدمی عمل استعمال کیا جاتا ہے،

تالیف کے آلے کی زنجیر

بڑے پروگراموں کے لیے، کمپائلر ملٹی سٹیپ ٹول چین کا حصہ ہے،

(پری پروسیسر) - (مرتب) - (اسمبلر) - (لنکر) - (لوڈر)۔

کمپائلر کا ڈھانچہ

جدید کمپائلر دو بڑے حصوں پر مشتمل ہوتے ہیں۔ ان حصوں میں سے ہر ایک کو اکثر ذیلی تقسیم کیا جاتا ہے۔ یہ دو بڑے حصے فرنٹ اینڈ اور بیک اینڈ ہیں۔

فرنٹ اینڈ سورس پروگرام کے تجزیہ کے لیے ذمہ دار ہے، پروگرام کی درمیانی نمائندگی کرتا ہے اور اس کے اجزاء کا تعین کرتا ہے۔ عام طور پر، سامنے کا سرہ ہدف کی زبان سے آزاد ہوتا ہے۔

دوسری طرف پچھلا حصہ ٹارگٹ پروگرام کو انٹرمیڈیٹ نمائندگی سے ترکیب کرنے کے لئے ذمہ دار ہے جو سامنے والے سرے سے تیار ہوتا ہے۔ عام طور پر، پچھلے سرے کو ماخذ کی زبان سے آزاد کہا جاتا ہے۔

Download Primer to continue