* Αριθμητικές και λογικές λειτουργίες: Προσθήκη, αφαίρεση, πολλαπλασιασμός, διαίρεση, σύγκριση (μεγαλύτερη από, λιγότερο από, ίση με), λογική και, ή όχι, κλπ.
* Κίνηση δεδομένων: Μετακίνηση δεδομένων μεταξύ καταχωρητών (εσωτερική μνήμη CPU), θέσεις μνήμης και συσκευές εισόδου/εξόδου. Αυτό περιλαμβάνει τη φόρτωση δεδομένων από τη μνήμη σε ένα μητρώο, την αποθήκευση δεδομένων από ένα μητρώο στη μνήμη και τη μεταφορά δεδομένων μεταξύ των καταχωρητών.
* Ροή ελέγχου: Αλλαγή της σειράς με την οποία εκτελούνται οι οδηγίες. Αυτό περιλαμβάνει:
* Jump/Branch: Αλλαγή του δείκτη εντολών σε μια διαφορετική διεύθυνση στη μνήμη, επιτρέποντας την εκτέλεση υπό όρους (if-then-else δηλώσεις) και βρόχους.
* κλήση/επιστροφή: Καλώντας τις υπορουτίνες (λειτουργίες) και την επιστροφή στο σημείο της κλήσης.
* είσοδος/έξοδος (I/O): Επικοινωνία με εξωτερικές συσκευές όπως πληκτρολόγια, ποντίκια, οθόνες, σκληρούς δίσκους και διεπαφές δικτύου.
* Έλεγχος συστήματος: Οδηγίες που σχετίζονται με τη διαχείριση της ίδιας της CPU, όπως ο χειρισμός των διακοπών (σήματα που υποδεικνύουν συμβάντα που απαιτούν άμεση προσοχή) και μεταβαλλόμενες λειτουργίες CPU (π.χ. εναλλαγή μεταξύ λειτουργίας χρήστη και πυρήνα).
Αυτές οι βασικές οδηγίες συνδυάζονται για να δημιουργήσουν πιο σύνθετες λειτουργίες και προγράμματα. Είναι σημαντικό να σημειωθεί ότι οι * συγκεκριμένες * οδηγίες ποικίλλουν σημαντικά μεταξύ διαφορετικών αρχιτεκτονικών CPU (X86, ARM, RISC-V, κλπ.). Κάθε αρχιτεκτονική έχει τη δική της αρχιτεκτονική διδασκαλίας (ISA), καθορίζοντας τις οδηγίες που κατανοεί. Ενώ οι κατηγορίες των οδηγιών είναι παρόμοιες, οι ακριβείς opcodes (δυαδικές αναπαραστάσεις των οδηγιών) και οι λειτουργίες τους διαφέρουν.
Οι προγραμματιστές σπάνια εργάζονται απευθείας με τον κωδικό μηχανής. Αντ 'αυτού, χρησιμοποιούν γλώσσες προγραμματισμού υψηλότερου επιπέδου (όπως C ++, Java, Python), οι οποίες στη συνέχεια καταρτίζονται ή ερμηνεύονται στον κώδικα μηχανής που μπορεί να εκτελέσει η CPU. Οι συναρμολογητές μεταφράζουν τη γλώσσα συναρμολόγησης (μια ανθρώπινη αναγνώσιμη αναπαράσταση του κώδικα μηχανής) στον κώδικα μηχανής.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα