فرق اور مترجم کے درمیان فرق

Anonim

اسمبلی بمقابلہ بمقابلہ مترجم

عام طور پر، کمپائلر کمپیوٹر پروگرام ہے جو ایک زبان میں ایک پروگرام پڑھتا ہے جو ذریعہ زبان کہا جاتا ہے، اور اسے دوسری زبان میں ترجمہ کرتا ہے، جس کو ہدف زبان کہا جاتا ہے. روایتی طور پر، ذریعہ زبان ایک اعلی درجے کی زبان ہے جیسے C ++ اور ہدف زبان کم سطح کی زبان ہے جیسے اسمبلی کی زبان. تاہم، وہاں موازنہ ہیں جو اسمبلی کی زبان میں لکھی گئی ایک ذریعہ پروگرام کو تبدیل کر سکتے ہیں اور اسے مشین کوڈ یا اعتراض کوڈ میں تبدیل کرسکتے ہیں. اسمبلی ایسے اوزار ہیں. دوسری طرف، ترجمان متعدد اوزار ہیں جو کچھ پروگرامنگ کی زبان میں لکھی گئی ہدایات پر عمل درآمد کرتے ہیں. مترجم یا تو براہ راست اعلی درجے کا ذریعہ کوڈ پر عملدرآمد کرسکتے ہیں یا انھیں انٹرمیڈیٹ کوڈ میں ترجمہ کرسکتے ہیں اور پھر اس کی تشریح کرسکتے ہیں یا اس پر عملدرآمد کرتے ہیں.

ایک اسمبلی کیا ہے؟

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

مترجم کیا ہے؟

ایک ترجمان ایک کمپیوٹر پروگرام یا ایک ایسا آلہ ہے جو پروگرامنگ کے ہدایات پر عملدرآمد کرتا ہے. ایک مترجم ذریعہ کوڈ کو براہ راست ذریعہ کوڈ پر عمل کرسکتا ہے یا ذریعہ کو کسی انٹرمیڈیٹ کوڈ میں تبدیل کرسکتا ہے اور اسے براہ راست اعلانے یا مرتب کرنے کے لئے ایک کمپائلر کی طرف سے تیار کردہ کوڈ کو انجام دیتا ہے (کچھ مترجم نظام میں اس کام کے لئے ایک کمپائلر شامل ہے). پرل، پطرون، میٹلاب اور روبی کی زبانیں ایسی پروگرامنگ زبانوں کی مثالیں ہیں جو وسطی ایڈیشن کوڈ کا استعمال کرتے ہیں. UCSD پاسل ایک precompiled کوڈ کی ترجمانی کرتا ہے. Java، BASIC اور Samlltalk جیسے زبانوں کو سب سے پہلے ذریعہ ایک انٹرمیڈیٹ کوڈ جسے بائیوڈڈ کہا جاتا ہے اور اس کی تفسیر کا احاطہ کرتا ہے.

ایک اسمبلی اور ایک ترجمان کے درمیان کیا فرق ہے؟

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