کمپائلر اور مترجم کے درمیان فرق
ایکسپلر بمقابلہ مترجم
کمپائلر اور مترجم دونوں بنیادی طور پر اسی مقصد کی خدمت کرتے ہیں. انہوں نے ایک سطح کی زبان کو دوسری سطح پر تبدیل کر دیا. ایک مباحثہ اعلی درجے کی ہدایات مشین زبان میں بدلتا ہے جبکہ مترجم اعلی سطحی ہدایت کو کسی انٹرمیڈیٹیٹ شکل میں بدلتا ہے اور اس کے بعد، ہدایات کو پھانسی دی جاتی ہے.
کمپائلر
ایک کمپائلر کمپیوٹر پروگرام کے طور پر بیان کیا جاتا ہے جس میں اعلی درجے کی ہدایات یا زبان کو ایک شکل میں تبدیل کرنے کے لئے استعمال کیا جاتا ہے جو کمپیوٹر کی طرف سے سمجھا جا سکتا ہے. چونکہ کمپیوٹر صرف بائنری نمبروں میں سمجھ سکتا ہے لہذا فرق کو بھرنے کے لئے ایک کمپائلر استعمال کیا جاتا ہے دوسری صورت میں انسان کو 0 اور 1 فارم میں معلومات تلاش کرنے کے لئے مشکل ہوتا.
اس سے قبل compilers سادہ پروگرام تھے جو علامتوں کو بٹس میں تبدیل کرنے کے لئے استعمال کیا جاتا تھا. پروگراموں کو بھی بہت آسان تھا اور انھوں نے اعداد و شمار میں ہاتھ کی طرف سے ترجمہ کی ایک سلسلہ میں شامل تھے. تاہم، یہ بہت وقت لگتا تھا. لہذا، کچھ حصوں کو پروگرام یا خودکار کیا گیا تھا. اس نے پہلا کمپائلر بنایا.
سادہ ترین استعمال کرتے ہوئے زیادہ جدید ترین تعمیل پیدا کیے جاتے ہیں. ہر نئے ورژن کے ساتھ، اس میں مزید قواعد شامل ہیں اور انسانی پروگرامر کے لئے مزید قدرتی زبان کا ماحول بنایا جاتا ہے. شکایت کاروں کو اس طریقے سے تیار کیا جا رہا ہے جو ان کے استعمال میں آسانی کو بہتر بناتا ہے.
مخصوص مخصوص زبانوں یا کاموں کے لئے مخصوص تعمیل موجود ہیں. شکایات ایک سے زیادہ یا کثیر مقصود پاس ہوسکتے ہیں. پہلا پاس اعلی درجے کی زبان کو ایک زبان میں تبدیل کر سکتا ہے جو کمپیوٹر زبان کے قریب ہے. اس کے بعد مزید گزرنے کے عمل کو حتمی مرحلے میں انعقاد کے مقصد میں تبدیل کردی جا سکتی ہے.
مترجم
اعلی درجے کی زبانوں میں تخلیق کردہ پروگراموں کو دو مختلف طریقے سے استعمال کیا جا سکتا ہے. سب سے پہلے ایک کمپائلر کا استعمال ہے اور دوسرا طریقہ مترجم کا استعمال کرنا ہے. اعلی درجے کی ہدایات یا زبان کو انٹرمیڈیٹ میں مترجم میں تبدیل کر دیا جاتا ہے. ترجمان کا استعمال کرنے کا فائدہ یہ ہے کہ اعلی درجے کی ہدایات تالیف مرحلے کے ذریعے نہیں جاتا ہے جو ایک وقت سازی کا طریقہ بن سکتا ہے. لہذا، مترجم کا استعمال کرتے ہوئے، ہائی سطح پر پروگرام براہ راست اعدام کیا جاتا ہے. یہی وجہ ہے کہ کچھ پروگرامرز اس وقت بچاتا ہے جب چھوٹے حصوں کو بنانے کے دوران ترجمانوں کا استعمال کرتے ہیں.
تقریبا تمام اعلی درجے کی پروگرامنگ کی زبان سازی اور مترجم ہیں. لیکن LISP اور باس جیسے کچھ زبانوں کو اس طرح سے ڈیزائن کیا گیا ہے کہ ان کا استعمال کرتے ہوئے ان پروگراموں کو ایک مترجم کی طرف سے اعدام کیا جاتا ہے.
کمپائلر اور مترجم کے درمیان فرق • ایک شکایت اعلی سطح کی ہدایت مشین زبان میں بدلتا ہے جبکہ ایک مترجم اعلی درجے کی ہدایت کو درمیانی شکل میں بدل دیتا ہے. • اعدام سے پہلے، پورے پروگرام کو مرتب کرکے پھانسی دی جاتی ہے جبکہ پہلی لائن کا ترجمہ کرنے کے بعد، ایک ترجمان تو اس پر عمل کرتا ہے. • تحلیل کے عمل کے بعد کمپائلر کی طرف سے غلطیوں کی فہرست پیدا کی جاتی ہے جبکہ ایک مترجم پہلی غلطی کے بعد ترجمہ کرتا ہے. • ایک مستقل عمل درآمد فائل کو کمپائلر کی طرف سے پیدا کیا جاتا ہے، جبکہ مترجم ایک بار تشریح شدہ پروگرام کی طرف سے ضروری ہے. |