Assembly (γλώσσα προγραμματισμού): Διαφορά μεταξύ των αναθεωρήσεων

Περιεχόμενο που διαγράφηκε Περιεχόμενο που προστέθηκε
Χωρίς σύνοψη επεξεργασίας
μΧωρίς σύνοψη επεξεργασίας
Γραμμή 1:
Μια '''συμβολική γλώσσα''' (Αγγλικά: assembly language) είναι μια χαμηλού επιπέδου γλώσσα προγραμματισμού, δηλαδή μια γλώσσα πολύ κοντά στη [[γλώσσα μηχανής]] και στο υλικό του υπολογιστή. Κάθε συγκεκριμένη [[αρχιτεκτονική υπολογιστή]], δηλαδή συγκεκριμένοςκάθε οικογένεια [[Κεντρική Μονάδα Επεξεργασίας|επεξεργαστήςεπεξεργαστών]], έχει τη δική της συμβολική γλώσσα, πουη οποία δίνεται συνήθως από τον κατασκευαστή του επεξεργαστήτης.
 
Ένα πρόγραμμα σε γλώσσα μηχανής είναι ένα μοτίβο από bits πουστα οποία κωδικοποιούνται εντολές του επεξεργαστή και δεδομένα. Αυτό γίνεται πιο ευανάγνωστο αντικαθιστώντας τις ακολουθίες των bits με μνημονικά ''σύμβολα''.
Για παράδειγμα ένας [[Κεντρική Μονάδα Επεξεργασίας|επεξεργαστής]] της αρχιτεκτονικής [[x86]]/[[IA-32]] θα καταλάβει την εντολή σε
Γραμμή 8:
10110000 01100001
</source>
ΓιαΈνας τους προγραμματιστέςπρογραμματιστής όμως είναι πιο εύκολο να θυμούνταιθυμάται την ισοδύναμη συμβολική αναπαράσταση, για παράδειγμα μια τυπική εντολή σε συμβολική γλώσσα είναι η εξής:
<source lang="asm">
mov al, 061h
</source>
που είναι συντομογραφία της αγγλικής λέξης move ( "μετακίνησε "). τηνΗ τιμήεντολή στοαυτή μετακινεί τη [[Δεκαεξαδικό σύστημα αρίθμησης|δεκαεξαδικόδεκαεξαδική]] τιμή 61 (97 στο [[Δεκαδικό σύστημα|δεκαδικό]] σύστημα) στον [[Καταχωρητής|καταχωρητή]] με το όνομα "al".
Αυτή είναι μια τυπική εντολή σε συμβολική γλώσσα.
 
Η μετατροπή ενός προγράμματος από συμβολική γλώσσα σε γλώσσα μηχανής γίνεται από ένα [[συμβολομεταφραστής|συμβολομεταφραστή]] (assembler) και το αντίστροφο γίνεται από έναν [[αντισυμβολομεταφραστή]] (disassembler).
 
== Εξωτερικοί Σύνδεσμοι ==
* [http://www.ceid.upatras.gr/faculty/alexiou/eis_sys/material/Manual_1_3.pdf Εγχειρίδο Χρήσης AT91] του Χαρίδημου Βέργου και του Νικόλαου Κωστάρα.
* [http://dmst.aueb.gr/dds/arch/asm/index.htm Αρχιτεκτονική Η/Υ ΙΙ - Συμβατική μηχανή και συμβολική γλώσσα], Δ. Σπινέλλης, ΟΠΑ.
 
[[Κατηγορία:Γλώσσες προγραμματισμού]]