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