Διαφορά μεταξύ μεταγλωττιστή και διερμηνέα

Διαφορά μεταξύ μεταγλωττιστή και διερμηνέα
Διαφορά μεταξύ μεταγλωττιστή και διερμηνέα

Βίντεο: Διαφορά μεταξύ μεταγλωττιστή και διερμηνέα

Βίντεο: Διαφορά μεταξύ μεταγλωττιστή και διερμηνέα
Βίντεο: Ποια είναι η διαφορά μεταξύ των πωλήσεων και του Marketing; Ένα πλήρως κατανοητό παράδειγμα! 2024, Ιούλιος
Anonim

Μεταγλωττιστής εναντίον Διερμηνέα

Ο μεταγλωττιστής και ο διερμηνέας, βασικά εξυπηρετούν τον ίδιο σκοπό. Μετατρέπουν ένα επίπεδο γλώσσας σε άλλο επίπεδο. Ένας μεταγλωττιστής μετατρέπει τις εντολές υψηλού επιπέδου σε γλώσσα μηχανής, ενώ ένας διερμηνέας μετατρέπει την εντολή υψηλού επιπέδου σε κάποια ενδιάμεση μορφή και μετά από αυτό, η εντολή εκτελείται.

Μεταγλωττιστής

Ο μεταγλωττιστής ορίζεται ως ένα πρόγραμμα υπολογιστή που χρησιμοποιείται για τη μετατροπή εντολών ή γλώσσας υψηλού επιπέδου σε μορφή κατανοητή από τον υπολογιστή. Δεδομένου ότι ο υπολογιστής μπορεί να κατανοήσει μόνο σε δυαδικούς αριθμούς, χρησιμοποιείται ένας μεταγλωττιστής για να καλύψει το κενό, διαφορετικά θα ήταν δύσκολο για έναν άνθρωπο να βρει πληροφορίες στη μορφή 0 και 1.

Παλαιότερα οι μεταγλωττιστές ήταν απλά προγράμματα που χρησιμοποιούνταν για τη μετατροπή συμβόλων σε bit. Τα προγράμματα ήταν επίσης πολύ απλά και περιείχαν μια σειρά από βήματα μεταφρασμένα με το χέρι στα δεδομένα. Ωστόσο, αυτή ήταν μια πολύ χρονοβόρα διαδικασία. Έτσι, ορισμένα μέρη ήταν προγραμματισμένα ή αυτοματοποιημένα. Αυτό σχημάτισε τον πρώτο μεταγλωττιστή.

Δημιουργούνται πιο εξελιγμένα compliers χρησιμοποιώντας τα πιο απλά. Με κάθε νέα έκδοση, προστίθενται περισσότεροι κανόνες και δημιουργείται ένα πιο φυσικό περιβάλλον γλώσσας για τον άνθρωπο προγραμματιστή. Τα προγράμματα συμμόρφωσης εξελίσσονται με αυτόν τον τρόπο που βελτιώνει την ευκολία χρήσης τους.

Υπάρχουν συγκεκριμένοι συμμορφωτές για ορισμένες συγκεκριμένες γλώσσες ή εργασίες. Οι συμμορφωτές μπορεί να είναι πάσο πολλαπλών ή πολλαπλών σταδίων. Το πρώτο πέρασμα μπορεί να μετατρέψει τη γλώσσα υψηλού επιπέδου σε μια γλώσσα που είναι πιο κοντά στη γλώσσα του υπολογιστή. Στη συνέχεια, τα περαιτέρω περάσματα μπορούν να το μετατρέψουν σε τελικό στάδιο για το σκοπό της εκτέλεσης.

Interpreter

Τα προγράμματα που δημιουργούνται σε γλώσσες υψηλού επιπέδου μπορούν να εκτελεστούν χρησιμοποιώντας δύο διαφορετικούς τρόπους. Η πρώτη είναι η χρήση μεταγλωττιστή και η άλλη μέθοδος είναι η χρήση διερμηνέα. Η διδασκαλία ή η γλώσσα υψηλού επιπέδου μετατρέπεται σε ενδιάμεσο από διερμηνέα. Το πλεονέκτημα της χρήσης διερμηνέα είναι ότι η οδηγία υψηλού επιπέδου δεν περνάει από το στάδιο της μεταγλώττισης που μπορεί να είναι μια χρονοβόρα μέθοδος. Έτσι, με τη χρήση διερμηνέα, το πρόγραμμα υψηλού επιπέδου εκτελείται απευθείας. Αυτός είναι ο λόγος για τον οποίο ορισμένοι προγραμματιστές χρησιμοποιούν διερμηνείς ενώ κάνουν μικρές ενότητες, καθώς αυτό εξοικονομεί χρόνο.

Σχεδόν όλες οι γλώσσες προγραμματισμού υψηλού επιπέδου έχουν μεταγλωττιστές και διερμηνείς. Ωστόσο, ορισμένες γλώσσες όπως η LISP και η BASIC έχουν σχεδιαστεί με τέτοιο τρόπο ώστε τα προγράμματα που γίνονται με τη χρήση τους να εκτελούνται από έναν διερμηνέα.

Διαφορά μεταξύ μεταγλωττιστή και διερμηνέα

• Ένας συμμορφωτής μετατρέπει την οδηγία υψηλού επιπέδου σε γλώσσα μηχανής ενώ ένας διερμηνέας μετατρέπει την οδηγία υψηλού επιπέδου σε ενδιάμεση μορφή.

• Πριν από την εκτέλεση, ολόκληρο το πρόγραμμα εκτελείται από τον μεταγλωττιστή, ενώ μετά τη μετάφραση της πρώτης γραμμής, ένας διερμηνέας το εκτελεί και ούτω καθεξής.

• Η λίστα σφαλμάτων δημιουργείται από τον μεταγλωττιστή μετά τη διαδικασία μεταγλώττισης ενώ ένας διερμηνέας σταματά τη μετάφραση μετά το πρώτο σφάλμα.

• Ένα ανεξάρτητο εκτελέσιμο αρχείο δημιουργείται από τον μεταγλωττιστή ενώ ο διερμηνέας απαιτείται από ένα ερμηνευμένο πρόγραμμα κάθε φορά.

Συνιστάται: