Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών



Σχετικά έγγραφα
Συμβολική Γλώσσα στον ΑΒΑΚΑ

ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. 03/01/09 Χαράλαμπος Τζόκας 1

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον κεφ.6 Εισαγωγή στον Προγραμματισμό

ΕΙΔΗ,ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙ- ΣΜΟΥ

Εισαγωγή. Διαλέξεις στο μάθημα: Μεταφραστές Γιώργος Μανής

<<ΔΗΜΗΤΡΗΣ ΜΑΝΩΛΗΣ ΦΥΣΙΚΟΣ ΜCs>> 1

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Μαλούτα Θεανώ Σελίδα 1

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού

Κεφάλαιο 2: Μεταφραστές

Εισαγωγή στον Προγραμματισμό

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

ΚΑΤΑΝΟΗΣΗ ΑΝΑΛΥΣΗ ΕΠΙΛΥΣΗ. Ο προγραμματισμός ασχολείται με το σύνολο των εντολών που δίνονται στον υπολογιστή ώστε να υλοποιείται ο αλγόριθμος.

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

Εγχειρίδιο χρήσης του Άβακα

Μεταγλωττιστής. Μεταφραστές. Γλώσσες. Είδη Μεταγλωττιστών. Μεταγλωττιστής Τελικό πρόγραµµα (object program) Εισαγωγή Αρχικό πρόγραµµα (source program)

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

6. Εισαγωγή στον προγραµµατισµό

Α. Ερωτήσεις Ανάπτυξης

Βασίλειος Κοντογιάννης ΠΕ19

Πληροφορική 2. Γλώσσες Προγραμματισμού

Προγραμματισμός Η/Υ. Προτεινόμενα θέματα εξετάσεων Εργαστήριο. Μέρος 1 ό. ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής

ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. Η επίλυση ενός προβλήματος με τον υπολογιστή περιλαμβάνει τρία εξίσου σημαντικά στάδια.

ΕΡΩΤΗΣΕΙΣ ΑΞΙΟΛΟΓΗΣΗΣ

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τα επιμέρους τμήματα Η ΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ. Αναπαράσταση μεγεθών. Αναλογική αναπαράσταση ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΜΟΝΑ Α ΕΛΕΓΧΟΥ

ΑΕΠΠ Ερωτήσεις θεωρίας

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)

Κεφ. 2 Θέματα Θεωρητικής Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Εισαγωγή στον προγραμματισμό

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Οργάνωση Η/Υ. Ο Επεξεργαστής TRN. Τμήμα Εφαρμοσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας Α. Χατζηγεωργίου-Η. Σακελλαρίου

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Στέφανος Ουγιάρογλου

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΥΠΟΛΟΓΙΣΤΩΝ

Κεφάλαιο 1 Προγραμματισμός Υπολογιστή. Εφαρμογές Πληροφορικής Κεφ. 7 Καραμαούνας Πολύκαρπος 1

4. Συντακτικό μιας γλώσσας είναι το σύνολο των κανόνων που ορίζει τις μορφές με τις οποίες μια λέξη είναι αποδεκτή.

Ε Ι Α Γ Ω Γ Η Σ Ο Ν Π Ρ Ο Γ Ρ Α Μ Μ Α Σ Ι Μ Ο Κ Ε Υ Α Λ Α Ι Ο 6. Σο πρόγραμμα γράφεται σε κάποια γλώσσα προγραμματισμού.

Περιεχόµενα. Ανασκόπηση - Ορισµοί. Ο κύκλος ανάπτυξης προγράµµατος. Γλώσσες Προγραµµατισµού Ασκήσεις

Υπολογιστικά Συστήματα Λογική Σχεδίαση Αρχιτεκτονική Η/Υ Διδάσκοντες: Δρ. Ευγενία Αδαμοπούλου, Δρ. Κώστας Δεμέστιχας

ΚΕΦΑΛΑΙΟ 7 ΕΙ Η, ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

ΚΕΦΑΛΑΙΟ 6 - ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Κεφάλαιο 6 ο Εισαγωγή στον Προγραμματισμό 1

Μεταγλωττιστές Ενότητα 1: Εισαγωγή

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Μέρος Β (Οργάνωση Υπολογιστών)

ΚΕΦΑΛΑΙΟ VI. Εισαγωγή στον προγραμματισμό

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 6 ο

ΕΙΣΑΓΩΓΗ ΣΤOΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Περί Προγραμματισμού και Γλωσσών Προγραμματισμού

Ενότητα 2 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

ΚΕΦΑΛΑΙΟ 6 Ο ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Τεχνικές σχεδίασης προγραμμάτων, Προγραμματιστικά Περιβάλλοντα

Επιµέλεια Θοδωρής Πιερράτος

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας,

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

ΑΕΠΠ Ερωτήσεις τύπου Σωστό-Λάθος

Εισαγωγή στην επιστήμη των υπολογιστών. Λογισμικό Υπολογιστών Κεφάλαιο 9ο Γλώσσες Προγραμματισμού

ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ - ΕΙΣ

Προγραμματισμός και Εφαρμογές Υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

Δεδομένα & Αναπαράσταση Πληροφορίας

Εισαγωγή στις Αρχές της Επιστήμης των ΗΥ

Μ Ε Ρ Ο Σ Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

Περιεχόµενα. I Βασικές Γνώσεις 1

ΚΕΦΑΛΑΙΟ 6. Περιβάλλοντα Ανάπτυξης Εφαρμογών. ΚΕΦΑΛΑΙΟ 6 Περιβάλλοντα Ανάπτυξης Εφαρμογών. Α Γενικού Λυκείου

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος

Αντικειμενοστρεφής Προγραμματισμός

6. 1 Η έννοια του προγράμματος

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση

Προγραµµατισµός Η/Υ. Μέρος2

Γλώσσες υψηλού επιπέδου Περιέχουν περισσότερες εντολές για την εκτέλεση πολύπλοκων εργασιών Τα προγράµµατα µεταφράζονται σε γλώσσα µηχανής είτε από το

Εντολές γλώσσας μηχανής

Εισαγωγή στον δομημένο προγραμματισμό

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Εισαγωγή στις Αρχές της επιστήμης των ΗΥ

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual

Αναπαράσταση Δεδομένων. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 1 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

Διδακτική της Πληροφορικής ΙΙ

Το λειτουργικό σύστημα. Προγραμματισμός II 1

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

ProcSim οδηγίες χρήσης.

Τεχνολογία Υπολογιστικών Συστηµάτων & Λειτουργικά Συστήµατα Κεφάλαιο 3

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 3 : Γλώσσες προγραμματισμού. Δρ.

Αρχιτεκτονικές Υπολογιστών

Γλώσσες Προγραμματισμού Μεταγλωττιστές

Transcript:

Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών

Πρόγραμμα σε γλώσσα μηχανής του ΕΚΥ Θέση μνήμης Περιεχόμενα μνήμης Εντολή (assembly) 0 0001 000000000011 lda 3 1 0011 000000000100 ada 4 2 0000 000000000000 hlt 3 1111 111111111111-4 0000 000000000001-5 6 7 0

Εκτέλεση προγράμματος σε γλώσσα μηχανής O ΕΚΥ χρησιμοποιεί την μορφή συμπληρώματος ως προς 2 για την αναπαράσταση των ακεραίων αριθμών. Το αποτέλεσμα της εκτέλεσης του προηγούμενου προγράμματος είναι η αποθήκευση της τιμής 0 στον συσσωρευτή (Α)

Άσκηση Περιγράψετε τα βήματα που εκτελούνται κατά την εκτέλεση του παραπάνω προγράμματος, τόσο κατά τη φάση ανάκλησης όσο και κατά τη φάση εκτέλεσης κάθε εντολής

Ορισμός προγράμματος σε γλώσσα μηχανής Πατάμε το πλήκτρο (Ι) Κάνουμε διπλό κλικ στη θέση μνήμης που θέλουμε να αλλάξουμε Επαναλαμβάνουμε για όλες τις θέσεις μνήμης που θέλουμε να διορθώσουμε Με τα πλήκτρα Μηδενισμός μηδενίζουμε μνήμη και καταχωρητές. Για οδηγίες χρήσης του ΕΚΥ δείτε http://www.cslab.ntua.gr/courses/csintro/eky/

Εκτέλεση προγράμματος Το πλήκτρο (Ι) πρέπει να είναι απενεργοποιημέν ο Πατάμε το πλήκτρο με το δεξί βέλος. Για οδηγίες χρήσης του ΕΚΥ δείτε http://www.cslab.ntua.gr/courses/csintro/eky/

Η συμβολική γλώσσα του ΕΚΥ (απλοποιημένη μορφή) Μορφή εντολής σε συμβολική γλώσσα (assembly) [Ετικέτα] [Εντολή] [Όρισμα] ;[Σχόλια] Δεν ενδιαφέρει αν οι χαρακτήρες μιας εντολής είναι μικρά ή κεφαλαία (case insensitive)

Μορφή εντολής σε συμβολική γλώσσα Όπου Ετικέτα Είναι ένα συμβολικό όνομα για την τρέχουσα θέση μνήμης Εντολή είναι το όνομα της εντολής. Για τις ανάγκες του μαθήματος, μπορεί να είναι ένα από τα lda, sta, ada, sba, mla, dva, hlt, καθώς και ένα όνομα ψευδοεντολής όπως θα αναφερθεί στη συνέχεια. Όρισμα, ή πεδίο εντολής. Πρόκειται για την θέση μνήμης στην οποία αναφέρεται η συγκεκριμένη εντολή. Μπορεί να είναι κάποιο συμβολικό όνομα ετικέτας ή αριθμητική τιμή δεκαδικό σύστημα αρίθμησης. Σχόλια Πρόκειται για ελεύθερο κείμενο το οποίο περιγράφει τη σημασία της εντολής.

Παραδείγματα εντολών lda my_num ; Εντολή χωρίς ετικέτα label sta 100 ; Εντολή με ετικέτα mem_pos hlt

Ψευδοεντολές Εντολές οι οποίες διευκολύνουν τον προγραμματισμό και καθοδηγούν την μετάφραση του προγράμματος σε γλώσσα μηχανής δεν ανήκουν στο σύνολο εντολών του επεξεργαστή και δεν εκτελούνται πραγματικά κατά την εκτέλεση των προγραμμάτων Οι ψευδοεντολές της συμβολικής γλώσσας του ΕΚΥ είναι οι: CON RES NAM END

H ψευδοεντολή CON Χρησιμοποιείται για την δήλωση σταθερών τιμών. Ημορφήτηςείναι label CON αριθμητική_σταθερά όπου label είναι το συμβολικό όνομα που αντιστοιχεί στη διεύθυνση της εντολής και αριθμητική_σταθερά είναι μια ακέραια τιμή στο δεκαδικό ή το οκταδικό σύστημα. Παράδειγμα: value con 24 Στο παραπάνω παράδειγμα η ετικέτα value αντιστοιχίζεται σε μια θέση μνήμης της οποίας το (σταθερό) περιεχόμενο είναι ο δεκαδικός αριθμός 24. Έτσι, η εντολή lda value έχει ως αποτέλεσμα την μεταφορά στο συσσωρευτή (A) της τιμής που περιέχεται στην θέση μνήμης με ετικέτα value, δηλαδή της σταθερής 24.

Η ψευδοεντολή RES Χρησιμοποιείται για την δήλωση μεταβλητών τιμών και πινάκων. Ημορφήτηςείναι label RES n H εντολή res ορίζει μια περιοχή από n διαδοχικές θέσεις μνήμης και αντιστοιχίζει την διεύθυνση της πρώτης θέσης στο συμβολικό όνομα label. Παράδειγμα: count con 1 Στο παραπάνω παράδειγμα η ετικέτα count αντιστοιχίζεται σε μια θέση μνήμης της οποίας το περιεχόμενο μπορεί να μεταβάλλεται. Έτσι, η εντολή sta count έχει ως αποτέλεσμα την μεταφορά της τιμής που είναι αποθηκευμένη στον συσσωρευτή (A) στη θέση μνήμης count.

Η ψευδοεντολή NAM Η ψευδοεντολή nam χρησιμοποιείται για τη δήλωση του ονόματος (NAMe) ενός προγράμματος σε συμβολική γλώσσα. Παράδειγμα nam my_program Άλλες εντολές end

Η ψευδοεντολή END Η ψευδοεντολή END ορίζει το τέλος ενός προγράμματος σε συμβολική γλώσσα.

Συμβολομεταφραστής (assembler) Η μετάφραση ενός προγράμματος από την συμβολική γλώσσα σε γλώσσα μηχανής γίνεται από προγράμματα που λέγονται συμβολομεταφραστές (assemblers).

Σύνταξη προγράμματος σε συμβολική γλώσσα στον εξομοιωτή του ΕΚΥ (1)

Σύνταξη προγράμματος σε συμβολική γλώσσα στον εξομοιωτή του ΕΚΥ (2) Μετάφραση του προγράμματος σε γλώσσα μηχανής Φόρτωση του προγράμματος στη μνήμη του ΕΚΥ

Αποτέλεσμα της φόρτωσης του προηγούμενου προγράμματος

Εκτέλεση του προγράμματος εξομοίωσης του Εκπαιδευτικού Υπολογιστή (Άβακας) Απ ευθείας από τη σελίδα http://www.cslab.ntua.gr/courses/csintro/eky/ (???) (Java applet) Εναλλακτικά Κατεβάστε το πρόγραμμα eky.zip απότηδιεύθυνση??? Αποσυμπιέστε τα περιεχόμενα του eky.zip σε έναν κατάλογο του υπολογιστή σας. Ανοίξτε την σελίδα eky_index.html. Για την εκτέλεση του προγράμματος ως εφαρμογής, κάντε διπλό κλικ στο run.bat. Για να εκτελεστεί το πρόγραμμα πρέπει να έχετε εγκατεστημένο το Java Runtime Environment (JRE) στον υπολογιστή σας. Για περισσότερα επικοινωνήστε με τον διδάσκοντα (andpapas@aegean.gr)

Γλώσσες προγραμματισμού χαμηλού επιπέδου Γλώσσα μηχανής Συμβολική γλώσσα Πλεονεκτήματα Δημιουργία «γρήγορων» προγραμμάτων (με μικρό χρόνο εκτέλεσης) Μειονεκτήματα Μεγάλος χρόνος ανάπτυξης Απαιτείται εξειδικευμένη γνώση του συγκεκριμένου επεξεργαστή Μεγάλη πιθανότητα λαθών και δυσκολία στην εύρεση και διόρθωσή τους Δημιουργούνται προγράμματα που απευθύνονται μόνο σε έναν τύπο υπολογιστή (μη μεταφέρσιμα)

Γλώσσες υψηλού επιπέδου Pascal, Basic, C, Fortran, Logo, Ανεξάρτητες από το υλικό ενός συγκεκριμένου υπολογιστή Ευκολία στην ανάπτυξη, ανίχνευση λαθών Μεταφέρσιμα

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

Μετάφραση προγράμματος Τα προγράμματα που μεταφράζουν από μια γλώσσα υψηλού επιπέδου σε γλώσσα μηχανής ονομάζονται μεταγλωττιστές Κάθε αρχείο που περιέχει το κείμενο ενός προγράμματος ονομάζεται πηγαίο αρχείο (source file). Η εισαγωγή και τροποποίηση των περιεχομένων ενός αρχείου ονομάζεται επεξεργασία (editing).

Μεταγλώττιση Ο μεταγλωττιστής μεταφράζει ένα πηγαίο αρχείο σε ένα αρχείο σε γλώσσα μηχανής που ονομάζεται αντικειμενικό αρχείο (object file). Το αντικειμενικό αρχείο συνδυάζεται με άλλα αντικειμενικά αρχεία που ονομάζονται βιβλιοθήκες (libraries) ώστε να δημιουργηθεί το εκτελέσιμο αρχείο (executable). Αυτή η διαδικασία ονομάζεται σύνδεση (linking).