Assembly (γλώσσα προγραμματισμού)

Μια συμβολική γλώσσα (Αγγλικά: assembly language) είναι μια χαμηλού επιπέδου γλώσσα προγραμματισμού, δηλαδή μια γλώσσα πολύ κοντά στη γλώσσα μηχανής και στο υλικό του υπολογιστή. Κάθε συγκεκριμένη αρχιτεκτονική συνόλου εντολών, δηλαδή κάθε οικογένεια επεξεργαστών, έχει τη δική της συμβολική γλώσσα, η οποία δίνεται συνήθως από τον κατασκευαστή της.

Ένα πρόγραμμα σε γλώσσα μηχανής είναι ένα μοτίβο από bits στα οποία κωδικοποιούνται εντολές του επεξεργαστή και δεδομένα. Αυτό γίνεται πιο ευανάγνωστο αντικαθιστώντας τις ακολουθίες των bits με μνημονικά σύμβολα.
 
Για παράδειγμα ένας επεξεργαστής της αρχιτεκτονικής x86/IA-32 θα καταλάβει την εντολή σε
γλώσσα μηχανής:
 10110000 01100001
Ένας προγραμματιστής όμως είναι πιο εύκολο να θυμάται την ισοδύναμη συμβολική αναπαράσταση, για παράδειγμα μια τυπική εντολή σε συμβολική γλώσσα είναι η εξής:
 mov  al, 061h
που είναι συντομογραφία της αγγλικής λέξης move ("μετακίνησε"). Η εντολή αυτή μετακινεί τη δεκαεξαδική τιμή 61 (97 στο δεκαδικό σύστημα) στον καταχωρητή με το όνομα "al".

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

Δείτε επίσης 
 x86
 x86-64

Βιβλιογραφία 
 "Παραδείγματα Προγραμματισμού μικρο-Υπολογιστικών Συστημάτων 8080-8085",Γεώργιος Παπαδόπουλος,Σωτήρης Λεβέντης,Σταύρος Κουμπιάς,Γιάννης Κωνσταντινίδης, Πάτρα 1984.
 "8086 και 370 Assembly", Γιώργου Β.Θεοδώρου, Αθήνα 1985.

Εξωτερικοί Σύνδεσμοι 

 Εγχειρίδο Χρήσης AT91  του Χαρίδημου Βέργου και του Νικόλαου Κωστάρα.
 Αρχιτεκτονική Η/Υ ΙΙ - Συμβατική μηχανή και συμβολική γλώσσα , Δ. Σπινέλλης, ΟΠΑ.

Γλώσσες προγραμματισμού