Μαθήματα Πληροφορικής & Προγραμματισμού

Μεταγλωττιστής (Compiler), Αναγνωριστικα και Σχόλια

Ο Μεταγλωττιστής (Compiler) της Pascal

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

Είναι συνεπώς απαραίτητο να γράψουμε τις εντολές (οδηγίες) μας σε μια ειδικά ορισμένη γλώσσα, όπως είναι η Pascal για παράδειγμα, την οποία μπορούμε να κατανοήσουμε, και μετά να την μετατρέψουμε σ’ έναν λιτό κώδικα (γλώσσα μηχανής) που μόνο ο υπολογιστής μπορεί να καταλάβει.

Ένας μεταγλωττιστής (compiler) της Pascal είναι και ο ίδιος ένα πρόγραμμα υπολογιστή που η μόνη δουλειά του είναι να μετατρέπει ένα πρόγραμμα της Pascal από τη μορφή που μπορεί να κατανοήσει ο άνθρωπος σε μια μορφή που μόνο ο υπολογιστής μπορεί να διαβάσει και να εκτελέσει.

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

Το αρχικό πρόγραμμα που γράφουμε σε Pascal αποκαλείται ο πηγαίος κώδικας (source code) και ο προκύπτον μεταγλωττισμένος κώδικας που δημιουργείται από τον μεταγλωττιστή (compiler) αποκαλείται συχνά ένα αντικείμενο αρχείο (object file).

Ένα ή περισσότερα αντικείμενα αρχεία (object files) μπορούν να συνδυαστούν με κάποιες προκαθορισμένες βιβλιοθήκες (libraries) από ένα άλλο πρόγραμμα που αποκαλείται linker ή και binder, για να δημιουργηθεί έτσι το τελικό ολοκληρωμένο αρχείο (εκτελέσιμο αρχείο – executable file), το οποίο και μπορεί να εκτελεσθεί από τον υπολογιστή.

Μια βιβλιοθήκη (library) είναι μια συλλογή από προμεταγλωττισμένα αντικείμενα αρχεία (object code) τα οποία παρέχουν κάποιες λειτουργίες (συναρτήσεις) που καλούνται επανειλημμένα από πολλά προγράμματα υπολογιστών.

Αναγνωριστικά (Identifiers)

Τα αναγνωριστικά (identifiers) είναι ονόματα με τα οποία μπορούμε να αναφερόμαστε σε αποθηκευμένες τιμές, όπως είναι οι μεταβλητές (variables) και οι σταθερές (constants).

Επίσης, το κάθε πρόγραμμα πρέπει να αναγνωρίζεται και το ίδιο, δηλ. να έχει ένα όνομα, άρα ένα identifier. Για τα αναγνωριστικά ισχύουν οι εξής κανόνες :

Πρέπει να ξεκινούν μ’ ένα γράμμα του αγγλικού αλφαβήτου ή το σύμβολο _ (underscore).

Μετά μπορούμε να χρησιμοποιήσουμε αλφαριθμητικούς χαρακτήρες, δηλ. αλφαβητικούς χαρακτήρες και ψηφία, καθώς και το σύμβολο _ (underscore).

Δεν πρέπει να περιέχουν τους παρακάτω ειδικούς χαρακτήρες (σύμβολα):

~ ! @ # $ % ^ & * ( ) _ + ` – = { } [ ] : ” ; ‘ < > ? , . / | \

Η Pascal δεν ξεχωρίζει τα πεζά από τα κεφαλαία γράμματα (not case sensitive). Αυτό σημαίνει ότι τα ονόματα MyProgram, MYPROGRAM και mYpRoGrAm είναι ισοδύναμα.

Σχόλια στην Pascal

Τα σχόλια υπάρχουν σε πολλές γλώσσες προγραμματισμού. Αποτελούν τα τμήματα του κώδικα που αγνοεί ο μεταγλωττιστής. Συνήθως αφαιρούνται απο κάποιο άλλο πρόγραμμα pre-compiler προ-μεταγλωττιστής πριν ξεκινήσει η μεταγλώττιση του πηγαίου κώδικα.

Σημαντικότητα των σχολίων

Ο σχολιασμός έχει δύο βασικούς στόχους:

  1. Πρώτα απ’ όλα κάνει τον κώδικά μας πιο εύκολα κατανοητό και από έναν τρίτο που βλέπει το πρόγραμμα για πρώτη φορά αλλά και για εμάς τους ίδιους που μετά από κάποιο χρονικό διάστημα είναι φυσικό να έχουμε ξεχάσει τις μεταβλητές που έχουμε χρησιμοποιήσει και για ποιο σκοπό τις έχουμε χρησιμοποιήσει.
  2. Μια άλλη χρήση των σχολίων είναι για να απομονώσουμε προσωρινά ένα κομμάτι του προγράμματος και να μπορέσουμε να εντοπίσουμε έτσι κάποια λάθη που εμφανίζονται κατά την εκτέλεσή του.Όταν δεν γνωρίζουμε την αιτία ενός λάθους στον κώδικά μας, μπορούμε να τοποθετήσουμε ένα ύποπτο κομμάτι κώδικα μέσα στα σύμβολα των σχολίων και έτσι αυτό δεν θα εκτελεσθεί όταν τρέξει το πρόγραμμα.

Σύνταξη των σχολίων στην Pascal

Τα σχόλια (comments) στην Pascal αρχίζουν με τα σύμβολα (* και τελειώνουν με τα σύμβολα *). Δεν μπορούμε να εμφωλιάσουμε σχόλια μέσα σ’ άλλα σχόλια. Για παράδειγμα, ο παρακάτω συνδυασμός (* (* *) *) θα εμφανίσει λάθος (error) επειδή ο compiler ταιριάζει (αντιστοιχεί) το (* με το πρώτο *) και αγνοεί ο,τιδήποτε βρίσκεται ανάμεσά τους. Έτσι, το δεύτερο *) θα μείνει μόνο του χωρίς το αντίστοιχό του (*. Στην Turbo Pascal, μπορούμε να χρησιμοποιήσουμε και το { Σχόλιο } αντί για το (* Σχόλιο *). Το σύμβολο { σημαίνει την αρχή ενός σχολίου και το σύμβολο } σημαίνει το τέλος ενός σχολίου. Τέλος μπορούμε να σχολιάσουμε μια γραμμή και με τα σύμβολα //

{* This is a multi-line comment
and it will span multiple lines. *}
{ This is a single line comment in pascal }

Μπορούμε να χρησιμοποιήσουμε σχόλια μέσα σ’ άλλα σχόλια χωρίς να συμβεί κάποιο λάθος, ως εξής :

{ (* Σχόλιο *) }

Αφήστε ένα Σχόλιο

Η ηλ. διεύθυνση σας δεν δημοσιεύεται. Τα υποχρεωτικά πεδία σημειώνονται με *

Αυτός ο ιστότοπος χρησιμοποιεί το Akismet για να μειώσει τα ανεπιθύμητα σχόλια. Μάθετε πώς υφίστανται επεξεργασία τα δεδομένα των σχολίων σας.