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

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Αρχιτεκτονική Υπολογιστών"

Transcript

1 Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 3: Τρόπος αποθήκευσης Byte (endianess). Αρχιτεκτονική συνόλου εντολών. Οργάνωση & Διευθυνσιοδότηση μνήμης. Ρυθμοί Λειτουργίας x86 Δρ. Μηνάς Δασυγένης Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

2 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

3 Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ψηφιακά Μαθήματα στο Πανεπιστήμιο Δυτικής Μακεδονίας» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3

4 Σκοπός ενότητας Η κατανόηση των διαφορετικών τρόπων αποθήκευσης των Byte στην εξωτερική μνήμη. Η κατανόηση των τρόπων διευθυνσιοδότησης στους σύγχρονους επεξεργαστές. Η κατανόηση ότι κάθε επεξεργαστής συνοδεύεται από τη δικιά του ISA, και κάθε ISA ορίζει μοναδικά την αρχιτεκτονική ενός επεξεργαστή. 4

5 Προηγούμενη διάλεξη 5

6 Επεξεργαστής (ΚΜΕ) Καλείται και Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) ή CPU. Το ενεργό μέρος ενός υπολογιστή. Καθορίζει ανά πάσα στιγμή το τι συμβαίνει στον υπολογιστή. Ο επεξεργαστής αποτελείται από δύο μέρη: Datapath (Διαδρομή δεδομένων). Εκτελεί όλες τις λειτουργίες (αριθμητικές, λογικές, μεταφορές, κλπ). Control (Μονάδα ελέγχου). Αντιλαμβάνεται το τι σημαίνουν οι εντολές (αποκωδικοποίηση εντολών) και ακολούθως. Κατευθύνει το datapath. Αναλαμβάνει την επικοινωνία με τις συσκευές Ι/Ο. 6

7 Μνήμη και τρόπος αποθήκευσης των Byte. 7

8 Η εξωτερική μνήμη του υπολογιστή Η κύρια μνήμη αποτελείται από ένα συνεχόμενο αριθμό θέσεων, κάθε μία από τις οποίες περιέχει το ίδιο πλήθος δυαδικών ψηφίων (ψηφίων ή bits). Σε κάθε θέση αντιστοιχεί μία διεύθυνση (address) μέσω της οποίας πραγματοποιείται η αναφορά στο περιεχόμενο της θέσης. Η κάθε θέση είναι ικανή να αποθηκεύσει μία ψηφιοσυλλαβή, ή ένα byte (8 δυαδικά ψηφία). 8

9 Παράδειγμα διευθυνσιοδότησης μνήμης στο x86 Στο listing στη γραμμή 5 του πηγαίου κώδικα ορίζονται κάποια δεδομένα. Αυτά τοποθετούνται στη μνήμη ξεκινώντας από τη διεύθυνση 00. Τα δεδομένα είναι 17 (=11h) Byte. Το επόμενο τμήμα δε μπορεί να τοποθετηθεί στη θέση 11h λόγω περιορισμών διευθυνσιοδότησης της αρχιτεκτονικής x86. Τοποθετείται στη θέση 20h. 9

10 Ορισμός της μνήμης Τι είναι η μνήμη; Η μνήμη είναι η βασική μονάδα του υπολογιστή όπου αποθηκεύονται τα δεδομένα και οι εντολές. χρησιμοποιώντας δυαδική αναπαράσταση. Ουσιαστικά είναι ένα (μεγάλο) σύνολο από 0 και 1. Οι προγραμματιστές πάντα ζητούσαν απεριόριστη και γρήγορη μνήμη. Πρόβλημα. Δυστυχώς, η γρήγορη μνήμη κοστίζει ακριβά... Λύση. Δημιουργία της ψευδαίσθησης ότι υπάρχει διαθέσιμη απεριόριστη και γρήγορη μνήμη. 10

11 Endianness Ως Endianness ορίζεται το σχετικό βάρος των επιμέρους bytes σε τύπους δεδομένων μεγαλύτερους του ενός byte. Καθορίζεται από τον κατασκευαστή. Big Endian. Όταν η διεύθυνση της προσπέλασης προσδιορίζεται από την διεύθυνση του αριστερότερου byte ή του byte στο μεγάλο άκρο. IBM 360/370, Motorola 68000, Sun SPARC, PowerPC 970. Little Endian. Όταν η διεύθυνση της προσπέλασης προσδιορίζονται από την διεύθυνση του δεξιότερου byte ή του byte στο μικρό άκρο. Intel x86, AMD64, DEC Vax. Bi-Endian (Διαμορφώσιμοι). Power PC, PA RISC, MIPS, IA64 (default Big Endian). DEC Alpha, ARM (default Little Endian). 11

12 Αποθήκευση Byte στη μνήμη 1 Κάθε διευθυνσιοδοτούμενο κελί μνήμης αποθηκεύει 1 Byte. Όταν θέλουμε να αποθηκεύσουμε πολλαπλά συνεχόμενα Byte στη μνήμη (π.χ. Λέξεις που αποτελούνται από 2 Byte), τότε αυτά μπορούν να αποθηκευτούν με 2 τρόπους: Είτε, στη χαμηλότερη διεύθυνση μνήμης αποθηκεύεται πρώτα το MSΒ και στην επόμενη (μεγαλύτερη) το LSB (big endian). Είτε, στη χαμηλότερη διεύθυνση μνήμης αποθηκεύεται πρώτα το LSB και στην επόμενη (μεγαλύτερη) το MSB (little endian). Ο τρόπος αποθήκευσης ονομάζεται «endianess». 12

13 Αποθήκευση Byte στη μνήμη 2 Το πως αποθηκεύονται στη μνήμη τα Byte ονομάζεται και 'byte ordering. Είναι πολύ σημαντικό στοιχείο όταν επικοινωνούν υπολογιστές με διαφορετική οργάνωση των byte στη μνήμη. Συνήθως χρησιμοποιούνται ενδιάμεσες απεικονίσεις (π.χ. XDR = external Data Representation). Αν ένας προγραμματιστής δε λάβει υπόψιν του τη διαφορετικότητα τότε θα δημιουργηθούν bugs που είναι δύσκολο να ανιχνευθούν. Οι όροι little,big endian δημιουργήθηκαν το Συνδέθηκαν με μια ιστορία από τα ταξίδια του Guliver (όταν οι liliputians μάλωναν για το που να σπάσει ένα αβγό little end / big end). Έγινε σημαντικό πρόβλημα όταν διασυνδέθηκαν οι υπολογιστές. 13

14 H big-endian οργάνωση μνήμης Έστω ότι σε έναν υπολογιστή με μήκος λέξης 32 bit (= 4 byte), θέλουμε να αποθηκεύσουμε τα περιεχόμενα ενός καταχωρητή (JC00) στη μνήμη, στις θέσεις 0 3. Big endian οργάνωση ("μεγάλου άκρου). Η αποθήκευση ξεκινά από το σημαντικότερο (αριστερότερο) byte της λέξης. Επεξεργαστές: Motorola. Υπολογιστές: Apple Macintosh, Atari, Amiga, workstations Sun, HP. 14

15 H little-endian οργάνωση μνήμης Έστω ότι σε έναν υπολογιστή με μήκος λέξης 32 bit (= 4 byte), θέλουμε να αποθηκεύσουμε τα περιεχόμενα ενός καταχωρητή (JC00) στη μνήμη, στις θέσεις 0 3. Little endian οργάνωση ("μικρού άκρου). Η αποθήκευση ξεκινά από το λιγότερο σημαντικό (δεξιότερο) byte της λέξης. Επεξεργαστές: Intel. Υπολογιστές: IBM και συμβατοί. Οι όροι big και small endian προέρχονται από τα "Ταξίδια του Gulliver" όπου σατιρίζονται οι πολιτικοί που διαφωνούν αν πρέπει τα αυγά να σπάζονται από το μεγάλο ή μικρό άκρο τους. 15

16 Το ΛΣ πρέπει να υποστηρίζει την endian του επεξεργαστή Little-endian operating systems: Linux on x86, x64, Alpha and Itanium. Mac OS X on x86, x64. OpenVMS on VAX, Alpha and Itanium. Solaris on x86, x64, PowerPC. Tru64 UNIX on Alpha. Windows on x86, x64 and Itanium. Big-endian operating systems: AIX on POWER. AmigaOS on PowerPC and 680x0. HP-UX on Itanium and PA-RISC. Linux on MIPS, SPARC, PA-RISC, POWER, PowerPC, 680x0, ESA/390, and z/architecture. Mac OS on PowerPC and 680x0. Mac OS X on PowerPC. MVS and DOS/VSE on ESA/390, and z/vse and z/os on z/architecture. Solaris on SPARC. 16

17 Υπάρχει και μια ακόμη endianess Κάποιοι υπολογιστές (π.χ. ARM) χρησιμοποιούν biendian. Μπορούν να ρυθμιστούν κατά την εκκίνηση να χρησιμοποιούν είτε little είτε big endian. Η ρύθμιση γίνεται είτε με software κατά την εκκίνηση, είτε με hardware (jumper). 17

18 Πλεονεκτήματα-Μειονεκτήματα endianness H little-endian μπορεί να διαβάσει την ίδια λέξη μερικές φορές σε διάφορα bit width (π.χ. Το 4A ) είτε διαβαστεί ως 8bit (4A) είτε ως 16 bit (004A) είναι το ίδιο (χρησιμοποιείται στους compilers). H big-endian βοηθάει στο να βρεθεί πόσος μεγάλος είναι ο αριθμός διαβάζοντας το πρώτο κελί μόνο. H little-endian απλοποιεί το hardware σε πράξεις multibyte (απαιτείται μια μόνο εντολή inc). 18

19 Σύνοψη endianess Στα παραδείγματα φαίνεται η τιμή που έχει ένας καταχωρητής και πως θα γραφεί στη μνήμη. 19

20 Παραδείγματα αποθήκευσης Byte (1/3) Διεύθυνση byte Διεύθυνση word x x x x C a a a a 0xDE 0xAD 0xBE 0xEF a a a a a a a a 20

21 Παραδείγματα αποθήκευσης Byte (2/3) Παραδείγματα: Τι θα συμβεί με την εκτέλεση των παρακάτω εντολών εάν ο επεξεργαστής: α) Ακολουθεί την σύμβαση Big Endian. β) Ακολουθεί την σύμβαση Little Endian. 1. LOAD, WORD, 0x Big Endian: Επιστρέφει Little Endian: Επιστρέφει 2. LOAD, HALFWORD 0x Big Endian: Επιστρέφει Little Endian: Επιστρέφει 0χDEADBEEF. 0xEFBEADDE. 0xBEEF. 0xEFBE. Η LOAD.WORD είναι εντολή MIPS και διαβάζει μια λέξη 4 Byte που ξεκινάει από τη συγκεκριμένη διεύθυνση. Η LOAD.HALFWORD είναι εντολή MIPS και επιστρέφει μια λέξη 2 Byte που ξεκινάει από τη συγκεκριμένη διεύθυνση. 21

22 Παραδείγματα αποθήκευσης Byte (3/3) Address Big Endian Little Endian

23 Περί διευθυνσιοδότησης μνήμης Συνήθως η μνήμη είναι 'byte addressable' δηλαδή αντιστοιχεί μια διεύθυνση σε κάθε byte της μνήμης. Υπάρχουν μνήμες που είναι 'word addressable' δηλαδή που αντιστοιχεί μια διεύθυνση σε κάθε λέξη της μνήμης. Η λέξη μπορεί να αποτελείται από: 2 Byte (16bit) ή 4 Byte (32bit) ή 8 Byte (64bit). 23

24 Χάρτης Μνήμης Η Μνήμη αποτελείται από την Μνήμη Προγράμματος και τη Μνήμη Δεδομένων. Υπάρχει και η μνήμη-χαρτογράφησης Ι/Ο (memory mapped), η οποία δεν είναι φυσική μνήμη. Δεν χρειάζεται να χρησιμοποιηθεί όλη η μνήμη. Για Intel μps, η μνήμη δεδομένων στη χαμηλότερη μνήμη και μνήμη προγράμματος στη ψηλότερη μνήμη. Ανώτατη Διεύθυνση: FFFFFh (20), FFFFFFh (24), FFFFFFFFh (32) Προσπελάσιμη Μνήμη: 1 Mbyte (20), 16 Mbytes (24), 1 Gbytes (32) 24

25 Καταχωρητές Τμημάτων /Pentium: Δυο επιπρόσθετα τμήματα καταχωρητών (FS, GS) στη μνήμη δεδομένων. Τα περιεχόμενα των τμημάτων καταχωρητών δείχνουν στη διεύθυνση βάσης των περιοχών που αντιστοιχούν στη μνήμη. 25

26 Ο 8086 χρησιμοποιεί τμηματοποιημένη (segmented) μνήμη Γραμμική Διεύθυνση F0000 E0000 D0000 C0000 B0000 A a a a a a a a a a a a a a a a a Τμηματική αντιμετώπιση μνήμης: απόλυτη (γραμμική) διεύθυνση είναι ο συνδυασμός ενός 16-bit τμήματος αξίας προστιθέμενο σε ένα 16-bit offset [CS:IP]. 26

27 Υπολογισμός της 20Bit διεύθυνσης στο 8086 Για να αποκτήσουμε 20-bit διεύθυνση από 16-bit καταχωρητή: Παίρνουμε μια διεύθυνση τμήματος, την πολλαπλασιάζουμε με το 16 (προσθέτουμε ένα δεκαεξαδικό μηδέν), και το προσθέτουμε το στο αντιστάθμισμα (offset). Παράδειγμα: 20-bit πρόγραμμα διεύθυνσης μνήμης: CS * 10h + IP. Παράδειγμα: 20-bit στοίβα της διεύθυνσης μνήμης: SS * 10h + SP. Πρόβλημα: μετατροπή 09F1 : 0100 σε γραμμική διεύθυνση. Προσαρμοσμένη αξία του τμήματος: 0 9 F 1 0 Πρόσθεση του αντισταθμίσματος (offset): Γραμμική διεύθυνση: 0 A

28 Η παραγωγή της διεύθυνσης μνήμης στον LOGICAL ADDRESS OFFSET ADDRESS 15 SEGMENT REGISTER 0000 ADDER 0 SEGMENT ADDRESS Γιατί 0000 στο segment address; BIT PGYSICAL MEMORY ADDRESS 0 28

29 Η λογική και η φυσική διεύθυνση Η λογική διεύθυνση είναι η μετατόπιση μέσα στο ίδιο τμήμα. Για παράδειγμα: CS=09F1 IP=0100 Λογική διεύθυνση: Φυσική διεύθυνση (προηγούμενη διαφάνεια): Α

30 Τρόποι Διευθυνσιοδότησης Τρόποι διευθυνσιοδότησης (Addressing modes). Πώς οι ISAs προσδιορίζουν την διεύθυνση. Οι τρόποι διευθυνσιοδότησης προσδιορίζουν σταθερές και καταχωρητές για τον υπολογισμό της διεύθυνσης. Η πραγματική διεύθυνση μνήμης η οποία προσδιορίζεται από τον τρόπο διευθυνσιοδότησης καλείται ενεργός διεύθυνση (effective address). 30

31 Γενικοί Τρόποι διευθυνσιοδότησης μνήμης Στο σχηματισμό της διεύθυνσης μνήμης μπορούν να συμμετέχουν: Απόλυτες τιμές. Καταχωρητές. Σταθερές τιμές μετατόπισης (offsets). displacement mem[offs+reg] τοπικές Πιθανή χρήση Register inderect mem[reg] δείκτες indexed mem[reg1+reg2] πίνακες direct mem[addr] στατικές Memory indirect mem[mem[reg]] *δείκτες auto-increment mem[reg++] πίνακες scaled mem[offs+reg1+reg2*d] πίνακες 31

32 Κάθε ISA υποστηρίζει έναν ή παραπάνω τρόπους διευθυνσιοδότησης Displacement (μετατόπισης). Register indirect (ο καταχωρητής φέρει τη δ/νση μνήμης). Indexed (υπάρχει ένας καταχωρητής δείκτης που δείχνει μετατόπιση από ένα άλλο σημείο). Direct (απευθείας πρόσβαση στη μνήμη). Memory Indirect (πρόσβαση σε μια θέση μνήμης η οποία έχει τη διεύθυνση μνήμης που θέλουμε να χρησιμοποιήσουμε). Auto increment (μετά την πρόσβαση αύξηση ενός δείκτη κατά 1). Scaled (μετά την πρόσβαση αύξηση ενός δείκτη με πολλαπλάσιο τρόπο). 32

33 Αρχιτεκτονική Συνόλου Εντολών Instruction Set Architecture (ISA) 33

34 Λειτουργία του Κεντρικού Επεξεργαστή Ανακαλεί αυτόματα εντολές από τη μνήμη και τις εκτελεί ακολουθιακά. Η ΚΜΕ περιέχει έναν αριθμό καταχωρητών. Κάθε καταχωρητής αποθηκεύει μία ακολουθία ψηφιοσυλλαβών (bytes) ορισμένου μήκους που ονομάζεται λέξη (word). Ένα σύστημα με κύρια μνήμη και ΚΜΕ, είναι η απλούστερη μορφή υπολογιστικού συστήματος (εξαιρουμένου του λογισμικού). Υπολογιστής = Επεξεργαστής + Κύρια Μνήμη. 34

35 4 είναι οι βασικές λειτουργίες Ανάκληση Εντολής. του υπολογιστή Αποκωδικοποίηση Εντολής. Εκτέλεση Εντολής. Εγγραφή αποτελεσμάτων. 35

36 Το ακολουθιακό μοντέλο λειτουργίας του Η/Y Βάζω Βάζω 36

37 Η έννοια του αποθηκευμένου προγράμματος (1/4) Οι σημερινοί υπολογιστές κτίζονται με βάση δυο αρχές. Οι εντολές αναπαρίστανται με αριθμούς. Τα προγράμματα αποθηκεύονται στην μνήμη για να διαβαστούν ή να γραφούν όπως και οι αριθμοί. Οι παραπάνω αρχές οδηγούν στην έννοια του αποθηκευμένου προγράμματος. Εντολές και δεδομένα πολλών τύπων μπορούν να αποθηκευτούν στη μνήμη ως αριθμοί Οδήγησε στον υπολογιστή αποθηκευμένου προγράμματος (stored program computer). 37

38 Η έννοια του αποθηκευμένου προγράμματος (2/4) Επεξεργαστής 38

39 Η έννοια του αποθηκευμένου προγράμματος (3/4) Χρήση κοινής τεχνολογίας μνήμης για δεδομένα και προγράμματα. Η μνήμη μπορεί να περιέχει: Το πηγαίο κώδικα ενός editor. Τον αντίστοιχο μεταγλωττισμένο κώδικα μηχανής. Το κείμενο που χρησιμοποιεί ο μεταγλωττισμένος editor. Τον μεταγλωττιστή που παρήγαγε τον κώδικα μηχανής. 39

40 Η έννοια του αποθηκευμένου προγράμματος (4/4) Συνέπειες αναπαράστασης των εντολών με αριθμούς. Τα προγράμματα κυκλοφορούν ως δυαδικά (binary) αρχεία. Επαναχρησιμοποίηση έτοιμου (συμβατού) λογισμικού. Δυαδική συμβατότητα (binary compatibility). Ευθυγράμμιση της βιομηχανίας γύρω από ένα μικρό αριθμό αρχιτεκτονικών συνόλου εντολών. 40

41 Επίπεδα αναπαράστασης εντολών Γλώσσα Υψηλού Επιπέδου (C) High-Level Language (HLL) c = a + b; Compiler Φιλική στον χρήστη Συμβολική Γλώσσα Assembly Language Add $s2, $s1, $s0 Γλώσσα Μηχανής Machine Language Assembler Φιλική στον Η/Υ 41

42 Γλώσσα υψηλού επιπέδου Παράδειγμα γλώσσας if (i == j) υψηλού επιπέδου (HLL) f = g + h; else f = g h; Υπάρχουν πολλές γλώσσες υψηλού επιπέδου. C, C++, Java, Fortran, Basic, Pascal, Lisp, Ada, κλπ. Βασικά πλεονεκτήματα γλωσσών υψηλού επιπέδου (HLLs). Είναι εύκολα κατανοητές από τον χρήστη αφού αναπτύχθηκαν επάνω στην ανθρώπινη γλώσσα (Αγγλική). Συμβάλλουν στην αυξημένη παραγωγικότητα. Το πρόγραμμα που γράφεται μπορεί να είναι ανεξάρτητο από τον υπολογιστή που θα εκτελεστεί (portability). 42

43 Επίπεδα αναπαράστασης: ASSEMBLY Παράδειγμα γλώσσας υψηλού επιπέδου (HLL) Compiler if (i == j) f = g + h; else f = g h; Συμβολική γλώσσα (Assembly) Else: Exit: bne $s3, $s4, Else add $s0, $s1, $s2 j Exit Sub $s0, $s1, $s2 Κάθε επεξεργαστής έχει την δικιά του συμβολική γλώσσα (Assembly). Η συμβολική γλώσσα είναι γλώσσα χαμηλού επιπέδου. Είναι όμως κατανοητή από τον χρήστη που μπορεί να γράψει πιο συμπαγές και αποδοτικό κώδικα αλλά σε περισσότερο χρόνο σε σχέση από τις άλλες HLLs. Συνήθως, ο κώδικας γράφεται σε HLLs και περνάει από μεταγλώττιση. Ο μεταγλωττιστής (Compiler) είναι ένα πρόγραμμα που αυτόματα μεταφράζει τις εντολές μιας HLL σε εντολές συμβολικής γλώσσας. 43

44 Επίπεδα αναπαράστασης: Παράδειγμα γλώσσας υψηλού επιπέδου (HLL) Γλώσσα Μηχανής Συμβολική γλώσσα (Assembly) Γλώσσα Μηχανής (Machine Language) Compiler Assembler Else: Exit: if (i == j) f = g + h; else f = g h; bne $s3, $s4, Else add $s0, $s1, $s2 j Exit Sub $s0, $s1, $s Ο συμβολομεταφραστής (Assembler) μεταφράζει τον κώδικα από την συμβολική γλώσσα (Assembly) σε γλώσσα μηχανής (δυαδικό). Δηλαδή στην μόνη μορφή την οποία ο επεξεργαστής κατανοεί και εκτελεί. 44

45 Επίπεδα προγραμματισμού Γλώσσα C, Γλώσσα Assembly int main(void) { puts("hello World"); return; } TITLE HELLOWORLD DEDOMENA SEGMENT MSG DB "Hello World",10,13,"$" DEDOMENA ENDS KODIKAS SEGMENT ARXH: MOV AX,DEDOMENA MOV DS,AX LEA DX,MSG MOV AH,9 INT 21H MOV AH,4CH INT 21H KODIKAS ENDS END ARXH 45

46 Επίπεδα προγραμματισμού Δεκαεξαδική αναπαράσταση C 6C 6F F 72 6C 64 0A 0D 24 B E D8 BA B4 09 CD 21 B4 4C CD 21 46

47 Επίπεδα προγραμματισμού Δυαδική αναπαράσταση C..=> Σημείωση: Ο υπολογιστής καταλαβαίνει μόνο το δυαδικό σύστημα. Στη μνήμη αποθηκεύονται μόνο 1 και 0. Για λόγους συμπύκνωσης ο assembler εμφανίζει τις πληροφορίες στο δεκαεξαδικό ή στο δεκαδικό σύστημα. 47

48 Εντολές - (Instructions) Οι εντολές ανήκουν σε πολλές κατηγορίες: Αριθμητικές: πρόσθεση, αφαίρεση, πολλαπλασιασμός, διαίρεση, κλπ. Ανάγνωσης/εγγραφής από/προς την μνήμη. Διακλάδωσης υπό συνθήκη. Εάν η συνθήκη είναι αληθής, τότε μεταφέρεται η ροή του προγράμματος αλλιώς συνεχίζεται η ακολουθιακή ροή. Ποιες άλλες εντολές θα ήταν χρήσιμες; Πώς αναπαρίστανται οι εντολές που καταλαβαίνει ο επεξεργαστής; Φυσικά στην γνωστή δυαδική μορφή (0 ή 1). 48

49 Η αρχιτεκτονική Η/Υ αποτελείται από 2 αντικείμενα Αρχιτεκτονική Υπολογιστών Αρχιτεκτονική Συνόλου Εντολών (ISA) Προσδιορίζει το ΤΙ κάνει η μηχανή σε ΥΨΗΛΟ ΕΠΙΠΕΔΟ Οργάνωση του Υπολογιστή (Machine Organization) Προσδιορίζει το ΠΩΣ μηχανή υλοποιεί την ISA σε ΧΑΜΗΛΟ ΕΠΙΠΕΔΟ 49

50 Αρχιτεκτονική συνόλου εντολών Αποτελεί το συμβόλαιο ανάμεσα στο Λογισμικό και στο Υλικό εάν το Λογισμικό κάνει το Χ, το Υλικό υπόσχεται να κάνει το Υ. Λειτουργική περιγραφή σε υψηλό επίπεδο του Τι κάνει το υλικό. Επιτρέπει στον προγραμματιστή να επικεντρώνεται στις λειτουργίες που υλοποιούνται ανεξάρτητα από το πως τις υλοποιεί το υλικό. Επιτρέπει πολλές διαφορετικές υλοποιήσεις με διαφορετικό κόστος και απόδοση να τρέχουν το ίδιο λογισμικό (binary compatible). Ακριβής περιγραφή του πώς το λογισμικό μπορεί να ενεργοποιήσει τις λειτουργίες και να προσπελάσει τα αποτελέσματα. 50

51 Που βρίσκεται η ISA Πρόγραμμα FORTRAN 90 Πρόγραμμα FORTRAN 90 συντάσσεται σε πρόγραμμα ISA Επίπεδο ISA Πρόγραμμα C Πρόγραμμα C συντάσσεται σε πρόγραμμα ISA Πρόγραμμα ISA εκτελείται από μικροπρόγραμμα ή το hardware Software Hardware Hardware 51

52 Πως σχεδιάζεται μια ISA; Ποιο θα ήταν το μοντέλο της διασύνδεσης Υλικού/Λογισμικού; Πόσα και ποια είδη εντολών υποστηρίζονται; Πώς αναπαρίστανται οι εντολές; Πώς μεταβάλλεται η ακολουθιακή εκτέλεση των εντολών; Δηλαδή πώς αλλάζει η ροή του προγράμματος. Πού αποθηκεύονται οι μεταβλητές ενός προγράμματος; Πόσες και ποιες είναι οι μονάδες αποθήκευσης; Ποιες και πώς μπορεί να τις δει το λογισμικό; Υποστηρίζει το υλικό δυνατότητα κλήσης υπορουτινών για δομημένο προγραμματισμό; εάν ναι, πώς γίνεται αυτό; 52

53 Μικροαρχιτεκτονική Η ISA προσδιορίζει το ΤΙ κάνει το υλικό, όχι πώς το κάνει Δεν προσδιορίζει για παράδειγμα τα εξής: Πώς υλοποιούνται οι λειτουργίες. Ποιες λειτουργίες υλοποιούνται γρήγορα και ποιες αργά. Ποιες λειτουργίες καταναλώνουν περισσότερη-λιγότερη ισχύ. Τα παραπάνω προσδιορίζονται από την μικροαρχιτεκτονική (microarchitecture). Μικροαρχιτεκτονική: ΠΩΣ το υλικό υλοποιεί την ISA Μια ISA μπορεί ναι υλοποιείται με πολλές διαφορετικές μικροαρχιτεκτονικές. Οι Pentium και Pentium 3 υλοποιούν σχεδόν την ίδια ISA (IA32 x86) αλλά διαφέρουν σημαντικά στην μικροαρχιτεκτονική. 53

54 Βασικές Αρχές Σχεδίασης ISA Αρχή 1: Η απλότητα ευνοεί την κανονικότητα. Αρχή 2: Το μικρότερο είναι ταχύτερο. Αρχή 3: Κάνε τη συνηθισμένη περίπτωση γρήγορα. Αρχή 4: Η καλή σχεδίαση απαιτεί καλούς συμβιβασμούς. 54

55 Υπάρχει ένα μεγάλο πλήθος από ISA Κάθε επεξεργαστής έχει τη δικιά του αρχιτεκτονική εντολών. Οικογένειες των επεξεργαστών μοιράζονται πολλά στοιχεία της ίδιας αρχιτεκτονικής, αλλά υπάρχουν και κάποιες διαφορές (π.χ και pentium). Οι ISA μπορούν να κατηγοριοποιηθούν σε κάποιες βασικές κατηγορίες ως προς την εσωτερική αποθήκευση και χρήση των εντολών. Οι ISA μπορούν να κατηγοριοποιηθούν σε σταθερού μήκους εντολές (μαζί με ορίσματα) και σε μεταβλητού μήκους. Π.χ. Ο x86 είναι μεταβλητού μήκους, ενώ ο ARM είναι σταθερού. 55

56 Στοιχεία που χαρακτηρίζουν μια ISA Αριθμός εντολών. Μορφή Εντολών: μεταβλητό ή σταθερό μέγεθος bytes για κάθε εντολή; ( bytes, MIPS 4 bytes). Πώς γίνεται η αποκωδικοποίηση (ID); Που βρίσκονται τα ορίσματα (operands) και το αποτέλεσμα; Μνήμη - καταχωρητές, πόσα ορίσματα, τι μεγέθους; Ποια είναι στη μνήμη και ποια όχι; Πόσοι κύκλοι για κάθε εντολή; 56

57 3 είναι οι βασικές Αρχιτεκτονικές Συνόλου Εντολών Όσον αφορά στον τρόπο αποθήκευσης και προσπέλασης των πληροφοριών για τη διεύθυνση ή την τιμή των τελεστέων, οι κύριες αρχιτεκτονικές είναι: Ταξινόμηση των Αρχιτεκτονικών Συνόλου Εντολών ανάλογα με το που βρίσκονται αποθηκευμένοι οι τελεστέοι. Αρχιτεκτονικές συσσωρευτών (accumulator). Αρχιτεκτονικές στοίβας (stack). Αρχιτεκτονικές καταχωρητών γενικού σκοπού. Αρχιτεκτονικές καταχωρητή - μνήμης (register memory). Αρχιτεκτονικές καταχωρητή καταχωρητή (register register) ή φόρτωσης αποθήκευσης (Load - Store). 57

58 1 από 3 Αρχιτεκτονική Συσσωρευτή 58

59 Αρχιτεκτονική Συσσωρευτή (1/2) 1η γενιά υπολογιστών: h/w ακριβό, μεγάλο μέγεθος καταχωρητή. Ένας καταχωρητής για όλες τις αριθμητικές εντολές (συσσώρευε όλες τις λειτουργίες Συσσωρευτής (Accum). Σύνηθες: 1ο όρισμα είναι ο Αccum, 2o η μνήμη, αποτέλεσμα στον Accum π.χ. add 200. Παράδειγμα: A = B + C. Accum = Memory(AddressB); Accum = Accum + Memory(AddressC); Memory(AddressA) = Accum; Όλες οι μεταβλητές αποθηκεύονται στη μνήμη. Δεν υπάρχουν βοηθητικοί καταχωρητές. 59

60 Αρχιτεκτονική Συσσωρευτή (2/2) 60

61 Πλεονεκτήματα / Μειονεκτήματα Κατά: αρχιτεκτονικής συσσωρευτή Χρειάζονται πολλές εντολές για ένα πρόγραμμα. Κάθε φορά πολλαπλές μεταφορές από τη μνήμη. Bottleneck (σημείο συμφόρησης) o Accum! Υπέρ: Εύκολοι compilers, κατανοητός προγραμματισμός, εύκολη σχεδίαση h/w. Λύση; Πρόσθεση καταχωρητών για συγκεκριμένες λειτουργίες (ISAs καταχωρητών ειδικού σκοπού). 61

62 2 από 3 Αρχιτεκτονική Στοίβας 62

63 Τι είναι σορός Ο σορός (stack) είναι μια θεμελιώδη δομή τύπου LIFO (Last In First Out). Καταλαμβάνει ένα μέρος της μνήμης. Δύο είναι οι βασικές λειτουργίες: Ώθηση (push), τοποθέτηση στοιχείου. Εξαγωγή (pop), απομάκρυνση στοιχείου. Οι λειτουργίες γίνονται είτε στην κορυφή είτε στη βάση. 63

64 Παράδειγμα λειτουργιών pop/push 64

65 Βασικά Στοιχεία Αρχιτεκτονικής Στοίβας Καθόλου registers! Stack model ~ 1960!!! Στοίβα που μεταφέρονται τα ορίσματα που αρχικά βρίσκονται στη μνήμη. Καθώς βγαίνουν γίνονται οι πράξεις και το αποτέλεσμα ξαναμπαίνει στη στοίβα. Παράδειγμα τα HP calculators με reverse polish notation. Παράδειγμα: A=B+C push Address C push AddressB add pop AddressA 65

66 Αρχιτεκτονική Στοίβας (1/2) 66

67 Παράδειγμα αρχιτεκτονικής στοίβας (1/2) Έστω ότι σε μια δομή στοίβας πρόκειται να αποθηκευτούν διαδοχικά τρία στοιχεία με τιμές -50, +5 και -150 αντίστοιχα και κάθε στοιχείο καταλαμβάνει 4 bytes. Εάν ο πυθμένας βρίσκεται στη διεύθυνση 1000, σε ποιες διευθύνσεις θα αποθηκευτούν αυτά τα τρία στοιχεία στην περίπτωση που: α) τα στοιχεία αποθηκεύονται διαδοχικά σε θέσεις μνήμης με μικρότερη διεύθυνση, β) τα στοιχεία αποθηκεύονται διαδοχικά σε θέσεις μνήμης με μεγαλύτερη διεύθυνση. 67

68 Παράδειγμα αρχιτεκτονικής στοίβας (2/2) Α ) 68

69 Εντολές (Instructions) Πώς ένας επεξεργαστής μπορεί να εκτελεί προγράμματα που γράφηκαν από τον άνθρωπο/χρήστη; Ο επεξεργαστής καταλαβαίνει μόνο δυαδικές τιμές. Πολύ λίγοι άνθρωποι/χρήστες μπορούν να γραφούν προγράμματα σε γλώσσα μηχανής (0 ή 1). Χρησιμοποιούνται διαφορετικά επίπεδα αναπαράστασης ενός προγράμματος. 69

70 Αρχιτεκτονική Στοίβας (2/2) Οι δυο βασικές λειτουργίες που μπορούν να εκτελεστούν σε μια στοίβα είναι η ώθηση και η εξαγωγή, οι οποίες μπορούν να υλοποιηθούν ακολουθώντας τα παρακάτω βήματα (υποθέτουμε πως τα στοιχεία τοποθετούνται σε θέσης μνήμης με μεγαλύτερη διεύθυνση και κάθε στοιχείο καταλαμβάνει 4 bytes): Ώθηση: Αύξηση της τιμής (του περιεχομένου) του δείκτη της στοίβας κατά 4. Ώθηση του επόμενου στοιχείου, στην κορυφή της στοίβας. Ο δείκτης στοίβας δείχνει το νέο στοιχείο κορυφής. Εξαγωγή: Εξαγωγή του πρώτου στοιχείου που υπάρχει στην κορυφή της στοίβας. Μείωση της τιμής (του περιεχομένου) του δείκτη στοίβας κατά 4. ο δείκτης στοίβας δείχνει στο προηγούμενο στοιχείο, το οποίο είναι τώρα το νέο στοιχείο κορυφής 70

71 Παράδειγμα αρχιτεκτονικής στοίβας Έστω η στοίβα του παρακάτω σχήματος στην οποία ο δείκτης στοίβας βρίσκεται στη διεύθυνση 1000 και δείχνει το στοιχείο με τιμή Δείκτης > στοίβας Να εξηγήσετε τον τρόπο με τον οποίο θα εκτελεστεί: i) ώθηση στη στοίβα του στοιχείου με τιμή 19, ii) εξαγωγή από τη στοίβα του στοιχείου κορυφής. Ποια θα είναι η διεύθυνση του δείκτη στοίβας σε κάθε μία από αυτές τις περιπτώσεις; Να θεωρήσετε ότι κάθε στοιχείο καταλαμβάνει 4 bytes και πως τα στοιχεία τοποθετούνται διαδοχικά σε θέσεις μνήμης με μεγαλύτερη διεύθυνση. Να σχεδιάσετε τη μορφή που θα έχει η νέα στοίβα μετά την ώθηση και την εξαγωγή στοιχείων αντίστοιχα

72 PUSH (ώθηση στοιχείου στη στοίβα) i. Ώθηση: Αύξηση της τιμής (του περιεχομένου) του δείκτη της στοίβας κατά 4. Η νέα τιμή του δείκτη στοίβας είναι το Ώθηση του επόμενου στοιχείου, που έχει τιμή 19, στην κορυφή της στοίβας. Ο δείκτης δείχνει το νέο στοιχείο κορυφής, με τιμή

73 POP (εξαγωγή στοιχείου από τη στοίβα) ii. Εξαγωγή: Εξαγωγή του πρώτου στοιχείου που υπάρχει στην κορυφή της στοίβας, το οποίο είναι το -28. Μείωση της τιμής (του περιεχομένου) του δείκτη στοίβας κατά 4. Η νέα τιμή του δείκτη στοίβας είναι το 996. Ο δείκτης στοίβας δείχνει στο προηγούμενο στοιχείο, το οποίο έχει τιμή 17 και είναι τώρα το νέο στοιχείο κορυφής. Δείκτης Στοίβας ->

74 3 από 3 Αρχιτεκτονική Καταχωρητών 74

75 Η αρχιτεκτονική Load-Store (1/2) Η εφαρμογή λειτουργιών σε τελεστέους που βρίσκονται στη μνήμη κοστίζει. Αυξημένος χρόνος πρόσβασης στη μνήμη (latency). Μικρότερο κόστος εάν οι τελεστέοι είναι αποθηκευμένοι σε καταχωρητές Αρχιτεκτονική Load-Store: Πολλοί καταχωρητές στον επεξεργαστή. Όλες οι λειτουργίες στον επεξεργαστή εφαρμόζονται σε τελεστέους που βρίσκονται σε καταχωρητές. Η πρόσβαση στη μνήμη γίνεται μόνο με εντολές μεταφοράς δεδομένων (Load-Store). 75

76 Η αρχιτεκτονική Load-Store (2/2) Πλεονεκτήματα: Μείωση του αριθμού των προσβάσεων στη μνήμη. Απλοποίηση της ISA. Διευκόλυνση του μεταγλωττιστή (compiler). Διαδικασία register allocation. Σχεδόν όλοι οι επεξεργαστές που σχεδιάστηκαν μετά το 1980 χρησιμοποιούν αρχιτεκτονική LOAD-STORE. Ταχύτητα (οι καταχωρητές είναι γρηγορότεροι από τη μνήμη). Ευκολία χρήσης και αποδοτικότητα. Παλαιοί υπολογιστές έχουν καταχωρητές συγκεκριμένης χρήσης (μειονέκτημα). Αυξάνεται ο αριθμός των καταχωρητών από γενιά σε γενιά. 76

77 2 είναι οι Υποκατηγορίες: Αρχιτεκτονική Καταχωρητών Register - Memory Αφήνουν το ένα όρισμα να είναι στη μνήμη (πχ ) A = B + C Register register (load store) (1980+) Load R1, B Add R1, C Store A, R1 Load R1, B Load R2, C Add R3, R1, R2 Store A, R3 77

78 Αρχιτεκτονική Καταχωρητή- Μνήμη (reg-mem) 78

79 Αρχιτεκτονική Load-Store 79

80 Σύνοψη ISA 80

81 Τυπικοί Συνδυασμοί τελεστέων μνήμης και ολικών τελεστών Αριθμός διευθύνσεων μνήμης Μέγιστος αριθμός επιτρεπόμενων τελεστών Τύπος αρχιτεκτονικής Παραδείγματα 0 3 καταχωρητήςκαταχωρητής Alpha, ARM, MIPS, PowerPC, SPARC, SuperH, Trimedia TM καταχωρητήςμνήμη IBM 360/370, Intel 80x86, Motorola 6800, TI TMS320C54x 2 2 Μνήμη - μνήμη VAX (επίσης έχει τρεις μορφές τελεστέων) 3 3 Μνήμη - μνήμη VAX (επίσης έχει δυο μορφές τελεστέων) 81

82 Συγκρίνοντας τις ISA για την ίδια λειτουργία Η ακολουθία εντολών στην συμβολική γλώσσα Assembly και για τις τέσσερις Αρχιτεκτονικές Συνόλου Εντολών (ISAs) για την λειτουργία C = A + B. Stack Accumulator Register (registermemory) Register (load-store) Push A Load A Load R1,A Load R1,A Push B Add B Add R3,R1,B Load R2,B Add Store C Store R3,C Add R3,R1,R2 Προσέξτε ότι η εντολή ADD έχει υπονοούμενους τελεστέους για τις 2 πρώτες αρχιτεκτονικές. Θεωρούμε ότι Α,Β βρίσκονται στη μνήμη. Pop C Store R3,C 82

83 Σύγκριση των 3 κύριων κατηγοριών ISA Τύπος Πλεονεκτήματα Μειονεκτήματα Καταχωρητής-καταχωρητής (0,3) Απλή, σταθερού μήκους εντολή κωδικοποίησης. Απλό μοντέλο παραγωγής κώδικα. Οι εντολής παίρνουν παρόμοιο αριθμό χτύπων για να εκτελεστούν. Υψηλότερη εντολή μετράει από αρχιτεκτονικές με αναφορές μνήμης σε εντολές. Περισσότερες εντολές και λιγότερη πυκνότητα εντολής οδηγούν σε μακροσκελή προγράμματα Καταχωρητής-μνήμη (1,2) Πρόσβαση στα δεδομένα χωρίς πρώτα να υπάρξει ξεχωριστή εντολή φόρτωσης. Οι μορφές των εντολών τείνουν να είναι εύκολες στην κωδικοποίηση και αποδίδουν καλή πυκνότητα Οι τελεστές δεν είναι ισοδύναμοι από τη στιγμή που η πηγή τελεστή σε μια δυαδική λειτουργία είναι κατεστραμμένη. Κωδικοποιώντας έναν αριθμό εγγραφής και μια διεύθυνση μνήμης για κάθε εντολή μπορεί να περιορίσει τον αριθμό των καταχωρητών. Χτύποι ανά εντολή ποικίλλουν ανά θέση τελεστή. Μνήμη-μνήμη (2,2) ή (3,3) Η πιο συμπαγής. Δεν σπαταλάει καταχωρητές. Μεγάλη αλλαγή σε μέγεθος εντολής, ειδικά για εντολές τριών-τελεστών. Επίσης, μεγάλη αλλαγή στην εργασία ανά εντολή. Οι προσβάσεις μνήμης δημιουργούν συμφόρηση μνήμης. Δεν χρησιμοποιείται σήμερα 83

84 Κατηγοριοποίηση ως προς τον αριθμό των τελεστών Οι αρχιτεκτονικές με καταχωρητές γενικού σκοπού (General Purpose Register) μπορεί να έχουν 2 ή 3 τελεστέους. Παράδειγμα: MIPS add r1,r2,r3 ΠΑΡΑΔΕΙΓΜΑ: 8086 add a1,b1 Στους 3 τελεστέους: Ο ένας προορισμός, οι δύο πηγή. Στους 2 τελεστέους: Ο ένας είναι και πηγή και αποτέλεσμα (δηλ. Το αποτέλεσμα αποθηκεύεται πάνω σε αυτόν). 84

85 Κατηγοριοποίηση ως προς αν επιτρέπονται διευθύνσεις μνήμης Ο αριθμός των τελεστέων μνήμης για μια ALU μπορεί να ποικίλει από κανένα έως τρεις. π.χ. τελεστέος1,τελεστέος2 και προορισμός είναι καταχωρητές (καμία διεύθυνση μνήμης). π.χ. τελεστέος1 διεύθυνση μνήμης, τελεστέος2 και προορισμός καταχωρητές (μια διεύθυνση μνήμης). π.χ. τελεστέος1 και τελεστέος2 διεύθυνση μνήμης, προορισμός καταχωρητής (δυο διευθύνσεις μνήμης). π.χ. τελεστέος1,τελεστέος2 και προορισμός διευθύνσεις μνήμης (τρεις διευθύνσεις μνήμης)... Υπάρχουν επτά πιθανοί συνδυασμοί. 3 όμως είναι οι βασικές κατηγορίες. Όλοι καταχωρητές ή ένας καταχωρητής και μια διεύθυνση μνήμης ή δυο διευθύνσεις μνήμης. 85

86 Σύγκριση των ISA ως προς το μήκος των εντολών Εντολές μεταβλητού μήκους: 1-17 bytes 80x bytes VAX, IBM. Γιατί τέτοιες διαφοροποιήσεις στο μέγεθος; Ιnstruction Memory ακριβή, οικονομία χώρου!!!! Εμείς στο μάθημα: register-register ISA! (load- store). 1. Οι καταχωρητές είναι γρηγορότεροι από τη μνήμη. 2. Μειώνεται η κίνηση με μνήμη. 3. Υποστηρίζεται όμως και register-memory ISA. Compilers πιο δύσκολοι όταν υπάρχει μεταβλητό μέγεθος!!! 86

87 Βασικά Στοιχεία ISA 8086 Μεταβλητού Μήκους εντολές. 16 καταχωρητές των 2Byte. Little Endian αρχιτεκτονική (βασική μονάδα: Byte). Το πλήθος των ορισμάτων είναι πάντα σταθερό. Εντολές. Αριθμητικές (add, sub, mul, div, inc). Λογικές (and, or, xor, κτλ.). Σύγκρισης (cmp, κτλ). Διακλάδωσης (jmp, je, jae, κτλ). Μεταφοράς δεδομένων. 87

88 Γιατί να μην έχουμε πολλούς καταχωρητές; Αφού οι καταχωρητές είναι τόσο...«γρήγοροι» γιατί να μην μεγαλώσουμε το μέγεθος του register file; 2η αρχή: Όσο μικρότερο τόσο ταχύτερο! Αν το register file πολύ μεγάλο, πιο πολύπλοκη η αποκωδικοποίηση, πιο μεγάλος ο κύκλος ρολογιού (κατά την κατάσταση ID) άρα... υπάρχει tradeoff. Μνήμη οργανωμένη σε bytes: (Κάθε byte και ξεχωριστή δ/νση). 88

89 Συνήθως οι εντολές όλων των ISA χρησιμοποιούν κάποιες από τις δομές Κώδικας πράξης Κώδικας πράξης Διεύθυνση (a) (b) Κώδικας πράξης Διεύθυνση1 Διεύθυνση2 Κώδικας πράξης Διεύθυνση1 Διεύθυνση2 Διεύθυνση3 (c) (d) Τέσσερις κοινές μορφές εντολών: (a) Μηδενική-διεύθυνση εντολών. (b) Μοναδιαία- διεύθυνση εντολών. (c) Διπλή-διεύθυνση εντολών. (d) Τριπλή-διεύθυνση εντολών. 89

90 Οι σχέσεις των εντολών ως προς τη word Σε ποια κατηγορία ανήκει ο MIPS; Σε ποια κατηγορία ανήκει ο 8086; 90

91 Αριθμητικές Πράξεις στο 8086 add (παράμετρος1), (παράμετρος2). π.χ. add ax, bx (ax<= ax+ bx). a=b+c+d+e (αν a,b,c,d,e είναι σε καταχωρητές). add a,b add a,c add a,d 4 εντολές... add a,e 91

92 Όλα είναι σε δυαδική αναπαράσταση μέσα στον Η/Υ Όλα τα στοιχεία (εντολές και δεδομένα) βρίσκονται σε δυαδική αναπαράσταση. Χρησιμοποιείται πλήθος κωδικοποιήσεων στον επεξεργαστή για να ερμηνεύεται κάθε φορά τι σημαίνει μια σειρά από 1 και 0. Για παράδειγμα, αν στη μνήμη είναι τοποθετημένα τα παρακάτω στοιχεία: θα έχουν διαφορετική ερμηνεία αν είναι χαρακτήρες ASCII, αριθμοί ή εντολές. 92

93 Αναπαράσταση εντολών στον Υπολογιστή (8086) Μεταβλητού μήκους. Πρέπει να ξέρει για κάθε machine code πόσα byte απαιτούνται. Π.χ. Η Β4 4C (MOV AH, 4Ch). To B4 είναι η MOV AH, δηλαδή να μπει μια αριθμητική τιμή στον AH. Μόλις διαβαστεί το B4 ο υπολογιστής το αποκωδικοποιεί και καταλαβαίνει ότι πρέπει να φέρει ακόμη ένα Byte (το επόμενο). Φέρνει το επόμενο 4C και έχοντας τα 2 Byte τότε τα αποκωδικοποιεί και τα εκτελεί. Ερώτηση: Η εντολή B4 00 τι κάνει; 93

94 Αναπαράσταση εντολών στον Υπολογιστή (8086) Παράδειγμα1 Στο πρόγραμμα που ακολουθεί βρείτε ποια bits καθορίζουν τη λειτουργία και ποια τις παραμέτρους. Εξηγείστε τι θα γίνει στις εντολές CD 71,BA

95 Αναπαράσταση εντολών στον Υπολογιστή (8086) Παράδειγμα 2 95

96 Οι βασικοί καταχωρητές του Pentium IV 96

97 Οι αριθμητικές πράξεις που υποστηρίζει ο IA32 (32bit x86) (1/2) Type Lenght Range Unsigned char char enum Unsigned int short int int Unsigned long long Δεν υποστηρίζονται float 8 bits 8 bits 16 bits 16 bits 16 bits 16 bits 32 bits 32 bits Length 4-bit 8-bit 16-bit 32-bit 0 to to ,768 to 32,767 0 to 65,535-32,768 to 32,767-32,768 to 32,767 0 to 4,294,967,295-2,147,483,648 to 2,147,483,647 Size name nibble byte word Dword (or doubleword) 97

98 Ο 8086 έχει 79 εντολές AAA AAD AAM AAS ADC ADD AND CALL CBW CLC CLD CLI CMC CMP CMPS CMPXCHG CWD DAA DAS DEC DIV ESC HLT IDIV IMUL IN INC INT INTO IRET/IRETD JxxJCXZ/JECXZ JMP LAHF LDS LEA LES LOCK LODS LOOP MOV MOVS LOOPE/LOOPZ LOOPNZ/LOOPNE MUL NEG NOP NOT OR OUT POP POPF/POPFD PUSH RCL RCR PUSHF/PUSHFD REP REPE/REPZ RET/RETF REPNE/REPNZ ROL ROR SAHF SAL/SHL SAR SBB SCAS SHL SHR STC STD STI STOS SUB TEST WAIT/FWAIT XCHG XLAT/XLATB XOR 98

99 Οι αριθμητικές πράξεις που υποστηρίζει ο IA32 (32bit x86) (2/2) Type 1 Bit 8 Bits 16 Bits 32 Bits 64 Bits 128 Bits Bit Signed integer Unsigned integer x x x x x x Binary coded decimal integer x Floating point x x 99

100 Ρυθμοί λειτουργίας των x86 (1/3): Πραγματικός ρυθμός Πραγματικός ρυθμός (real - mode): Χρησιμοποιείται από το MS-DOS. Διαθέσιμα μόνο το πρώτο 1ΜΒ RAM. Ο ρυθμός προεπιλογής ύστερα από reset ή power-on. Το 8086 υποστηρίζει μόνο αυτόν το ρυθμό. Υποστηρίζονται όλες οι εντολές του επεξεργαστή. Κάθε φορά εκτελείται μια διεργασία. 100

101 Ρυθμοί λειτουργίας των x86 (2/3): Προστατευμένος ρυθμός Προστατευμένος ρυθμός (protected mode): Υποστηρίζεται από και έπειτα. Χρησιμοποιείται από και μετά. Τα Windows, Linux, FreeBSD χρησιμοποιούν αυτόν το ρυθμό. Χρησιμοποιεί όλη τη μνήμη. Διαφορετική χρήση των τμημάτων ως προς τον πραγματικό ρυθμό. Με την χρήση κατάλληλων καταχωρητών/σημαιών (protection enable bit) ενεργοποιείται αυτός ο ρυθμός από τον πραγματικό ρυθμό. Μπορεί να απενεργοποιηθεί ομοίως. Υποστηρίζονται επίπεδα δικαιωμάτων. 101

102 Ενεργοποίηση του προστατευμένου ρυθμού: Πρέπει να τεθεί το 0bit του cr0 στην τιμή 1. ΠΡΟΣΟΧΗ: Μόνο για assembly και έπειτα! Μεταφέρουμε το cr0 στον eax. Κάνουμε την πράξη OR. Μεταφέρουμε το eax στο cr0. ; set PE bit mov eax, cr0 or eax, 1 ; far jump (cs = selector of code segment) jmp ; now we are in PM. 102

103 Ρυθμοί λειτουργίας των x86 (3/3): Ιδεατός 8086 ρυθμός Ιδεατός 8086 ρυθμός (virtual 8086 mode). Πολλαπλές και ταυτόχρονες εκδόσεις/εκτελέσεις του πραγματικού ρυθμού μέσα σε ρυθμό εκτέλεσης πραγματικό. Κάθε διεργασία έχει το δικό της περιβάλλον Υποστηρίζονται σχεδόν όλες οι λειτουργίες του 8086 αλλά με κάποιους περιορισμούς (π.χ. Δεν επιτρέπεται απευθείας πρόσβαση στο υλικό ή προνομιακές εντολές). Γίνεται software εξομοίωση των int οπότε υπάρχει καθυστέρηση κατά την είσοδο/έξοδο. 103

104 Παράρτημα 104

105 Δεδομένα Το στάδιο της εκτέλεσης μιας εντολής από τον επεξεργαστή αφορά στην επεξεργασία των δεδομένων. Ο επεξεργαστής ως ψηφιακό σύστημα επεξεργάζεται τα δεδομένα δυαδικά. Αριθμητικά δεδομένα. Δυαδική αναπαράσταση αριθμητικών δεδομένων. Μη αριθμητικά δεδομένα-χαρακτήρες. Δυαδική αναπαράσταση χαρακτήρων. 105

106 Επεξεργαστής Ψηφιακό σύστημα (Γενικά). Είναι μια εξειδικευμένη σχεδίαση για συγκεκριμένη εφαρμογή. Ο επεξεργαστής είναι ένα πολύπλοκο ψηφιακό σύστημα. Προγραμματιζόμενος (μπορεί να εκτελεί πολλές εφαρμογές). Αποτελείται από συνδυαστική και ακολουθιακή λογική. Η σχεδίαση ενός επεξεργαστή απαιτεί την εφαρμογή της αφρόκρεμας των τεχνικών σχεδίασης ψηφιακών συστημάτων *. Εάν σας ενδιαφέρει να σχεδιάσετε και να υλοποιήσετε έναν επεξεργαστή στο υλικό, μπορείτε να παρακολουθήσετε το προπτυχιακό μάθημα της Σχεδίασης Ψηφιακών Συστημάτων. Προηγμένη Σχεδίαση Ψηφιακών Συστημάτων (Μεταπτυχιακό). * Πηγή: Design Automation Conference (SAC'99) 106

107 Bασικές τεχνολογίες μνήμης SRAM (πολύ γρήγορη, πάρα πολύ ακριβή). DRAM (γρήγορη, ακριβή). Flash (NAND, NOR). External Magnetic Storage (hard disk, tape, dat). External Optical Storage (dvdrom, cdrom, bluray). Για την καλύτερη εκμετάλλευση των τεχνολογιών μνήμης, χρησιμοποιείται η 'Ιεραρχία της μνήμης' (μελλοντική διάλεξη). 107

108 Memory Market Trend 108

109 Μεταφορά Δεδομένων Είναι απαραίτητη η δυνατότητα μεταφοράς δεδομένων μεταξύ εσωτερικών πόρων αποθήκευσης του επεξεργαστή. Καταχωρητών και μνήμης. Εντολές μεταφοράς δεδομένων (data transfer instructions). Για αν προσπελάσουμε για να διαβάσουμε ή να μεταβάλλουμε τα περιεχόμενα της μνήμης ορίζονται δύο λειτουργίες. Ανάγνωση από τη μνήμη (LOAD). Εγγραφή/Αποθήκευση στη μνήμη (STORE). 109

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

111 Επίπεδα Λογισμικού Τα επίπεδα λογισμικού είναι οργανωμένα με έναν ιεραρχικό τρόπο. Ιεραρχία υπό την μορφή ομόκεντρων κύκλων. Οι εφαρμογές είναι ο εξωτερικός δακτύλιος. Το λογισμικό συστημάτων (systems software) βρίσκεται ανάμεσα στο υλικό και το λογισμικό των εφαρμογών. Το λογισμικό συστημάτων παρέχει χρήσιμες υπηρεσίες όπως τα λειτουργικά συστήματα, οι μεταγλωττιστές και οι συμβολομεταφραστές. 111

112 Η ιεραρχία του λογισμικού 112

113 Λογισμικό Συστημάτων Λειτουργικό σύστημα: Παρέχει υπηρεσίες και λειτουργίες επίβλεψης καθώς διαχειρίζεται τους πόρους ενός Η/Υ προς όφελος των προγραμμάτων που εκτελούνται. Οι πιο σημαντικές λειτουργίες του είναι οι εξής: Διαχείριση βασικών λειτουργιών εισόδου κι εξόδου. Κατανομή χώρου αποθήκευσης και μνήμης. Παροχή δυνατοτήτων κοινής χρήσης του υπολογιστή μεταξύ πολλών εφαρμογών που τον χρησιμοποιούν ταυτόχρονα. Παραδείγματα: Windows, Linux, MacOS. Μεταγλωττιστής: Μεταφράζει εντολές μιας γλώσσας υψηλού επιπέδου (π.χ. C) σε εντολές συμβολικής γλώσσας (assembly). Συμβολομεταφραστής: Μεταφράζει εντολές συμβολικής γλώσσας (assembly) σε γλώσσα μηχανής. 113

114 Τεχνική της αφαίρεσης Η έρευνα στα βάθη της περιγραφής του υλικού ή του λογισμικού αποκαλύπτει περισσότερες πληροφορίες. Χαμηλότερου επιπέδου λεπτομέρειες κρύβονται για να παρασχεθεί ένα απλούστερο μοντέλο στα υψηλότερα επίπεδα. Η χρήση αφαιρέσεων είναι η βασική τεχνική για το σχεδιασμό υπολογιστικών συστημάτων μεγάλης πολυπλοκότητας. Μια βασική διασύνδεση ανάμεσα στα επίπεδα αφαίρεσης είναι η Αρχιτεκτονική Συνόλου Εντολών. Η διασύνδεση μεταξύ υλικού και λογισμικού χαμηλού επιπέδου. 114

115 Βασικά Στοιχεία MIPS Λέξεις των 32 bit (μνήμη οργανωμένη σε bytes, ακολουθεί το μοντέλο big Εndian). 32 καταχωρητές γενικού σκοπού - REGISTER FILE. Εντολές αποθήκευσης στη μνήμη (lw, sw). Αριθμητικές εντολές (add, sub κλπ). Εντολές διακλάδωσης (branch instructions). Δεν αφήνουμε τις εντολές να έχουν μεταβλητό πλήθος ορισμάτων- π.χ. add a,b,c πάντα: a=b+c. Θυμηθείτε την 1ηαρχή: H ομοιομορφία των λειτουργιών συμβάλλει στην απλότητα του h/w. 115

116 Αριθμητικές Πράξεις στο MIPS Αριθμητικές Πράξεις: add a, b, c # a <- b + c a = b + c + d + e; -add a, b, c -add a, a, d -add a, a, e 3 εντολές για το άθροισμα 4 μεταβλητών. 116

117 Αναπαράσταση εντολών στον Υπολογιστή (MIPS) Συμβολική αναπαράσταση: add $t0, $s1, $s2 Assembly $s1 $s2 $t0 unused add Κώδικας Μηχανής bit 5 bit 5 bit 5 bit 5 bit 6 bit 117

118 Τέλος Ενότητας 118

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 3: Τρόπος αποθήκευσης Byte (endianess). Αρχιτεκτονική συνόλου εντολών. Οργάνωση & Διευθυνσιοδότηση μνήμης. Ρυθμοί Λειτουργίας

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 7: Αποκωδικοποίηση Εντολής x86 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους;

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους; Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Δομή Εντολών και Παραδείγματα) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική

Διαβάστε περισσότερα

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

Σύγχρονες Αρχιτεκτονικές Υπολογιστών ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ Σύγχρονες Αρχιτεκτονικές Υπολογιστών ΑΚΑ ΗΜΑΪΚΟ ΕΤΟΣ 2014-2015 Αρχιτεκτονική Συνόλου Εντολών (Instruction Set Architecture-ISA) 1 Ένας υπολογιστής

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 2: Καταχωρητές, HelloWorld σε 8086, emu8086 emulator Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 3: Καταχωρητές, Τμήματα, Διευθυνσιοδότηση Μνήμης, SEGMENT, MOV, ADD, SUB, INT, TITLE, LEA

Διαβάστε περισσότερα

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

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Κώδικας μηχανής (E) Ο επεξεργαστής μπορεί να εκτελέσει το αρχιτεκτονικό σύνολο εντολών (instruction set architecture) Οι

Διαβάστε περισσότερα

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Δομή Εντολών και Παραδείγματα) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική

Διαβάστε περισσότερα

-Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!)

-Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Οργάνωση Υπολογιστών 5 συστατικά στοιχεία -Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Συσκευές γρήγορες π.χ. κάρτες γραφικών,

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: Διαδικασίες, Σωρός, Διαφανείς συναρτήσεις Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Τι εννοούμε με τον όρο υπολογιστικό σύστημα και τι με τον όρο μικροϋπολογιστικό σύστημα; Υπολογιστικό

Διαβάστε περισσότερα

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

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 7ο ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Γενικό διάγραμμα υπολογιστικού συστήματος Γενικό διάγραμμα υπολογιστικού συστήματος - Κεντρική Μονάδα Επεξεργασίας ονομάζουμε

Διαβάστε περισσότερα

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση:

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 9 : Ομάδες Εντολών: Ιδιότητες και Λειτουργίες Ευάγγελος Καρβούνης Παρασκευή, 15/01/2016 Τι είναι ομάδα εντολών;

Διαβάστε περισσότερα

Αρχιτεκτονικές Συνόλου Εντολών

Αρχιτεκτονικές Συνόλου Εντολών Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Αρχιτεκτονικές Συνόλου Εντολών (Instruction Set Architectures - ISA) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Ο

Διαβάστε περισσότερα

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

Εντολές γλώσσας μηχανής Εντολές γλώσσας μηχανής Στον υπολογιστή MIPS η εντολή πρόσθεσε τα περιεχόμενα των καταχωρητών 17 και 20 και τοποθέτησε το αποτέλεσμα στον καταχωρητή 9 έχει την μορφή: 00000010001101000100100000100000 Πεδία

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 8: Ολισθήσεις Περιστροφές Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

; Τι περιέχεται στη συσκευασία ενός μικροεπεξεργαστή σήμερα;

; Τι περιέχεται στη συσκευασία ενός μικροεπεξεργαστή σήμερα; Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Αρχιτεκτονικές Συνόλου Εντολών (Instruction Set Architectures - ISA) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Τι

Διαβάστε περισσότερα

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 5ο μάθημα:αρχές, ιδιότητες αρχιτεκτονικού συνόλου εντολών (ISA) Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Εσωτερική αποθήκευση

Διαβάστε περισσότερα

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή Εισαγωγή Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ Σκοπός του εργαστηρίου είναι να γνωρίσουµε την εσωτερική δοµή και αρχιτεκτονική της κεντρικής µονάδας επεξεργασίας, να κατανοήσουµε τον τρόπο µε τον οποίο λειτουργεί

Διαβάστε περισσότερα

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση: Καθ.

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 4: Πολλαπλασιασμός (MUL,IMUL). Διαίρεση (DIV,IDIV). Εμφάνιση αλφαριθμητικού. Εμφάνιση χαρακτήρα.

Διαβάστε περισσότερα

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

Αρχιτεκτονικές Υπολογιστών ΑΡΧΙΤΕΚΤΟΝΙΚΕΣ ΥΠΟΛΟΓΙΣΤΩΝ Μάθηµα: Αρχιτεκτονικές Υπολογιστών Βασικά Συστατικά ενός Υπολογιστικού Συστήµατος ( οµή Οργάνωση) ιδάσκων:αναπλ.καθ. Κ. Λαµπρινουδάκης clam@unipi.gr Αρχιτεκτονικές Υπολογιστών

Διαβάστε περισσότερα

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. Τρίτη (3 η ) δίωρη διάλεξη. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. Τρίτη (3 η ) δίωρη διάλεξη. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή Τρίτη (3 η ) δίωρη διάλεξη. Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο

Διαβάστε περισσότερα

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

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης Υπολογιστές Ι Εισαγωγή Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2017-18 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Αρχιτεκτονική x86-64) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Αρχιτεκτονικό σύνολο εντολών Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Αρχιτεκτονική x86(-64) 32-bit και 64-bit λειτουργία. Αρχιτεκτονική x86(-64) Αρχιτεκτονική επεξεργαστών x86(-64) Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

Αρχιτεκτονική x86(-64) 32-bit και 64-bit λειτουργία. Αρχιτεκτονική x86(-64) Αρχιτεκτονική επεξεργαστών x86(-64) Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2017-18 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Αρχιτεκτονική x86-64) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 5: Εντολές αλλαγής ροής. Διακλάδωση χωρίς συνθήκη. Διακλάδωση με συνθήκη. Δρ. Μηνάς Δασυγένης

Διαβάστε περισσότερα

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

Αναπαράσταση Δεδομένων. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Αναπαράσταση Δεδομένων ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Αναπαράσταση δεδομένων Κατάλληλη συμβολική αναπαράσταση δεδομένων, για απλοποίηση βασικών πράξεων, όπως πρόσθεση Πόσο εύκολο είναι

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Σημειώσεις για τον 80x86

Σημειώσεις για τον 80x86 Σημειώσεις για τον 80x86 Τι είναι η διεύθυνση; 16bits 0000h 0001h 0002h 8bits 20h 32h 30h Η μνήμη ενός μικροϋπολογιστικού συστήματος χωρίζεται σε μικρά τμήματα του ενός byte FFFEh 30h 2 16 =65,536 bytes

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 9 : Ομάδες Εντολών: Ιδιότητες και Λειτουργίες Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα Τμήμα Μηχανικών

Διαβάστε περισσότερα

Κεφάλαιο 4 ο. Ο Προσωπικός Υπολογιστής

Κεφάλαιο 4 ο. Ο Προσωπικός Υπολογιστής Κεφάλαιο 4 ο Ο Προσωπικός Υπολογιστής Μάθημα 4.3 Ο Επεξεργαστής - Εισαγωγή - Συχνότητα λειτουργίας - Εύρος διαδρόμου δεδομένων - Εύρος διαδρόμου διευθύνσεων - Εύρος καταχωρητών Όταν ολοκληρώσεις το μάθημα

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Εισαγωγή στη C θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Τεχνολογίες ημιαγωγών. Chapter 2 Instructions: Language of the Computer 1

Τεχνολογίες ημιαγωγών. Chapter 2 Instructions: Language of the Computer 1 Τεχνολογίες ημιαγωγών Chapter 2 Instructions: Language of the Computer 1 Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή Διαφάνειες

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 10: Πέρασμα Παραμέτρων σε Διαδικασίες. Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Εντολές του MIPS (2)

Εντολές του MIPS (2) ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι Διάλεξη 3 Εντολές του MIPS (2) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Παράδειγμα (συνέχεια από προηγ. διάλεξη) $s3

Διαβάστε περισσότερα

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 3 Εντολές του MIPS (2)

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 3 Εντολές του MIPS (2) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 3 Εντολές του MIPS (2) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Y Παράδειγμα (συνέχεια από προηγ. διάλεξη) $s3 = &A[0] = 0x0001080 &A[8]

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Αρχιτεκτονικη υπολογιστων

Αρχιτεκτονικη υπολογιστων ΤΕΙ Κρήτης Τμ. Μηχανικών Πληροφορικής Αρχιτεκτονικη υπολογιστων Τζαγκαράκης Χαράλαμπος hatzagarak@cs.teicrete.gr Εισαγωγη: ο επεξεργαστης και η γλωσσα του Eπεξεργαστής: MIPS Microprocessor Without Interlocked

Διαβάστε περισσότερα

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών ARM και x86

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών ARM και x86 ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών ARM και x86 Αρης Ευθυμίου Το σημερινό μάθημα! Λυση του lab02! Αρχιτεκτονική ARM σε τι μοιάζει και σε τι διαφέρει από τον MIPS! Αρχιτεκτονική x86 μια γρήγορη ματιά στη

Διαβάστε περισσότερα

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly Αρης Ευθυμίου Το σημερινό μάθημα! Σύνταξη εντολών! Θέματα σχετικά με τη προσπέλαση, οργάνωση μνήμης διευθύνση για κάθε byte διευθύνσεις λέξεων

Διαβάστε περισσότερα

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 2 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 2 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής Γιώργος Δημητρίου Μάθημα 2 ο Σύνολα Εντολών Οι εντολές που εκτελεί ο κάθε επεξεργαστής (ή οικογένεια επεξεργαστών) MIPS ARM SPARC PowerPC IA-32 Αρχιτεκτονικές συνόλου εντολών Βασικές Έννοιες Εντολές μηχανής

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων 2.1 Αρχιτεκτονική Υπολογιστών 2.1 Αρχιτεκτονική Υπολογιστών 2.2 Γλώσσα Μηχανής 2.3 Εκτέλεση προγράµµατος 2.4 Αριθµητικές και λογικές εντολές 2.5 Επικοινωνία µε άλλες συσκευές

Διαβάστε περισσότερα

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας Κεφάλαιο 3 ο Αρχιτεκτονική Υπολογιστών Μάθημα 3.: Κεντρική Μονάδα Επεξεργασίας Όταν ολοκληρώσεις το κεφάλαιο θα μπορείς: Να σχεδιάζεις την εσωτερική δομή της ΚΜΕ και να εξηγείς τη λειτουργία των επιμέρους

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 11-12 : Δομή και Λειτουργία της CPU Ευάγγελος Καρβούνης Παρασκευή, 22/01/2016 2 Οργάνωση της CPU Η CPU πρέπει:

Διαβάστε περισσότερα

Ερωτήσεις θεωρίας MY. Μέρος Α. Υλικό.

Ερωτήσεις θεωρίας MY. Μέρος Α. Υλικό. Ερωτήσεις θεωρίας MY Μέρος Α. Υλικό. 1. Η μνήμη ROM είναι συνδυαστικό ή ακολουθιακό κύκλωμα; 2. α) Να σχεδιαστεί μία μνήμη ROM που να δίνει στις εξόδους της το πλήθος των ημερών του μήνα, ο αριθμός του

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 11 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Single Cycle Datapath http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ Η Κεντρική Μονάδα Επεξεργασίας (Central Processing Unit -CPU) ή απλούστερα επεξεργαστής αποτελεί το μέρος του υλικού που εκτελεί τις εντολές ενός προγράμματος υπολογιστή

Διαβάστε περισσότερα

Στοιχεία από Assembly Γιώργος Μανής

Στοιχεία από Assembly Γιώργος Μανής Στοιχεία από Assembly 8086 Γιώργος Μανής Καταχωρητές καταχωρητές γενικής φύσης καταχωρητές δείκτες καταχωρητές αναφοράς καταχωρητές τµηµάτων ειδικοί καταχωρητές Καταχωρητές γενικής φύσης 16 bit ax, bx,

Διαβάστε περισσότερα

Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου. Ενδέκατη (11 η ) δίωρη διάλεξη.

Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου. Ενδέκατη (11 η ) δίωρη διάλεξη. Chapter 5 Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου Ενδέκατη (11 η ) δίωρη διάλεξη. Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση: Καθ. Εφαρμογών Νικόλαος Πετράκης,

Διαβάστε περισσότερα

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 5 Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου Ενδέκατη (11 η ) δίωρη διάλεξη. Διαφάνειες διδασκαλίας από το

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ 4 ο Εξάμηνο Μαδεμλής Ιωάννης ΥΠΟΡΟΥΤΙΝΕΣ ΕΡΓΑΣΤΗΡΙΟ 6 Οι υπορουτίνες αποτελούν αυτόνομα τμήματα κώδικα που διεκπεραιώνουν μία συγκεκριμένη εργασία και μπορούμε να τα καλούμε

Διαβάστε περισσότερα

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

ΟΜΑΔΕΣ ΕΝΤΟΛΩΝ: ΙΔΙΟΤΗΤΕΣ ΚΑΙ ΛΕΙΤΟΥΡΓΙΕΣ ΟΜΑΔΕΣ ΕΝΤΟΛΩΝ: ΙΔΙΟΤΗΤΕΣ ΚΑΙ ΛΕΙΤΟΥΡΓΙΕΣ 1. Εισαγωγή Η λειτουργία της CPU καθορίζεται από τις εντολές που εκτελεί, και που ονομάζονται εντολές μηχανής (machine instructions) ή εντολές υπολογιστή (computer

Διαβάστε περισσότερα

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

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας, Μικροεπεξεργαστές Σημειώσεις Μαθήματος 2013-14 Υπεύθυνος: Δρ Άρης Παπακώστας, Η γλώσσα assembly είναι μια γλώσσα προγραμματισμού χαμηλού επιπέδου για συγκεκριμένους υπολογιστές ή άλλη προγραμματιζόμενη

Διαβάστε περισσότερα

Καταχωρητές & τμήματα μνήμης του Ματθές Δημήτριος Καθηγητής Πληροφορικής

Καταχωρητές & τμήματα μνήμης του Ματθές Δημήτριος Καθηγητής Πληροφορικής Καταχωρητές & τμήματα μνήμης του 8086 Ματθές Δημήτριος Καθηγητής Πληροφορικής Καταχωρητές γενικού σκοπού Υπάρχουν τέσσερις (4) γενικού σκοπού καταχωρητές των 16-bit που χρησιμοποιούνται από τους προγραμματιστές

Διαβάστε περισσότερα

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (Τμήματα Υπολογιστή) ΕΚΠΑΙΔΕΥΤΗΣ:ΠΟΖΟΥΚΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΤΜΗΜΑΤΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Κάθε ηλεκτρονικός υπολογιστής αποτελείται

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 02 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 Μάθημα : Μικροϋπολογιστές Τεχνολογία Τ.Σ. Ι, Θεωρητικής κατεύθυνσης Ημερομηνία

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No 05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Β ) Λειτουργικό Σύστημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή Αριθμός bit δίαυλου δεδομένων (Data Bus) Αριθμός bit δίαυλου διευθύνσεων (Address Bus) Μέγιστη συχνότητα λειτουργίας (Clock Frequency) Τύποι εντολών Αριθμητική

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Εισαγωγή στην Πληροφορική

Εισαγωγή στην Πληροφορική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 8: Λειτουργικά Συστήματα Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 07 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

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

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών Ενότητα 3: Χειρισμός δεδομένων, 2ΔΩ Τμήμα: Αγροτικής Οικονομίας & Ανάπτυξης Διδάσκων: Θεόδωρος Τσιλιγκιρίδης Μαθησιακοί Στόχοι Η Ενότητα 3 διαπραγματεύεται θέματα

Διαβάστε περισσότερα

Προγραμματισμός Ι (HY120)

Προγραμματισμός Ι (HY120) Προγραμματισμός Ι (HY20) # μνήμη & μεταβλητές πρόγραμμα & εκτέλεση Ψηφιακά δεδομένα, μνήμη, μεταβλητές 2 Δυαδικός κόσμος Οι υπολογιστές είναι δυαδικές μηχανές Όλη η πληροφορία (δεδομένα και κώδικας) κωδικοποιείται

Διαβάστε περισσότερα

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

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ» Περιεχόμενα Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»... 2 Καταχωρητές... 3 Αριθμητική-λογική μονάδα... 3 Μονάδα μνήμης... 4 Μονάδα Εισόδου - Εξόδου... 5 Μονάδα ελέγχου... 5 Ρεπερτόριο Εντολών «ΑΒΑΚΑ»... 6 Φάση

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών (Ι)

Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

Διαβάστε περισσότερα

Βασική δοµή και Λειτουργία Υπολογιστή

Βασική δοµή και Λειτουργία Υπολογιστή Βασική δοµή και Λειτουργία Υπολογιστή Η τεχνολογία των Η/Υ έχει βασιστεί στη λειτουργία του ανθρώπινου οργανισµού. Οπως ο άνθρωπος πέρνει εξωτερικά ερεθίσµατα από το περιβάλλον τα επεξεργάζεται και αντιδρά

Διαβάστε περισσότερα

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή 1 Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή μνήμη(cache). Η cache είναι πολύ σημαντική, πολύ γρήγορη,

Διαβάστε περισσότερα

Συστήματα Μικροϋπολογιστών

Συστήματα Μικροϋπολογιστών Συστήματα Μικροϋπολογιστών Παραδείγματα προγραμματισμού του με Intel 8085 Υπεύθυνος Μαθήματος: K. ΠΕΚΜΕΣΤΖΗ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:

Διαβάστε περισσότερα

Προχωρηµένα Θέµατα Αρχιτεκτονικής

Προχωρηµένα Θέµατα Αρχιτεκτονικής Προχωρηµένα Θέµατα Αρχιτεκτονικής Μάθηµα 2 ο : Instruction Set Principles and Examples Μάθηµα 2 ο Προχωρηµένα Θέµατα Αρχιτεκτονικής 1 Σχεδιασµός Συνόλου Εντολών Θέµατα που θα συζητηθούν ιαφορετικές επιλογές

Διαβάστε περισσότερα

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

Διαβάστε περισσότερα

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση:

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Αρχιτεκτονικό σύνολο εντολών Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα 1. Ποια είναι η σχέση της έννοιας του μικροεπεξεργαστή με αυτή του μικροελεγκτή; Α. Ο μικροεπεξεργαστής εμπεριέχει τουλάχιστο έναν μικροελεγκτή. Β. Ο

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Αρχιτεκτονική-Ι. Ενότητα 1: Εισαγωγή στην Αρχιτεκτονική -Ι

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Αρχιτεκτονική-Ι. Ενότητα 1: Εισαγωγή στην Αρχιτεκτονική -Ι ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Αρχιτεκτονική-Ι Ενότητα 1: Εισαγωγή στην Αρχιτεκτονική -Ι Ιωάννης Έλληνας Τμήμα Η/ΥΣ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

MIPS functions and procedures

MIPS functions and procedures Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης MIPS functions and procedures Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Multi Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Multi Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Multi Cycle Datapath http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Εργαστήριο

Αρχιτεκτονική Υπολογιστών Εργαστήριο Αρχιτεκτονική Υπολογιστών Εργαστήριο Ενότητα: ΠΑΡΑΔΕΙΓΜΑ ΑΠΟΣΦΑΛΜΑΤΩΣΗΣ Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Παρακάτω δίνονται μερικοί από τους ακροδέκτες που συναντάμε στην πλειοψηφία των μικροεπεξεργαστών. Φτιάξτε έναν πίνακα που να

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: Λειτουργίες Αρχείων Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 201 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Chapter 2. Εντολές : Η γλώσσα του υπολογιστή

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Chapter 2. Εντολές : Η γλώσσα του υπολογιστή Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή Δεύτερη (2 η ) δίωρη διάλεξη. Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών

Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών 5 συστατικά στοιχεία -Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Συσκευές γρήγορες π.χ. κάρτες γραφικών,

Διαβάστε περισσότερα

Οργάνωση Η/Υ. Γιώργος ηµητρίου. Μάθηµα 2 ο. Πανεπιστήµιο Θεσσαλίας - Τµήµα Μηχανικών Η/Υ, Τηλεπικοινωνιών και ικτύων

Οργάνωση Η/Υ. Γιώργος ηµητρίου. Μάθηµα 2 ο. Πανεπιστήµιο Θεσσαλίας - Τµήµα Μηχανικών Η/Υ, Τηλεπικοινωνιών και ικτύων Γιώργος ηµητρίου Μάθηµα 2 ο Πανεπιστήµιο Θεσσαλίας - Τµήµα Μηχανικών Η/Υ, Τηλεπικοινωνιών και ικτύων Αναπαράσταση Πληροφορίας Η/Υ Αριθµητικά δεδοµένα n Σταθερής υποδιαστολής n Κινητής υποδιαστολής Μη αριθµητικά

Διαβάστε περισσότερα

Εργαστήριο ΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ

Εργαστήριο ΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Εισαγωγή Εργαστήριο ΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Σκοπός του εργαστηρίου είναι να κατανοήσουµε τους τρόπους προσπέλασης της µνήµης (µέθοδοι διευθυνσιοδότησης) σε ένα υπολογιστικό σύστηµα. Η Μνήµη 1 Ψηφιακή Λογική 4

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 3: Προσπελάσεις Μνήμης στον MIPS. Μανόλης Γ.Η. Κατεβαίνης

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 3: Προσπελάσεις Μνήμης στον MIPS. Μανόλης Γ.Η. Κατεβαίνης ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Ασκήσεις 3: Προσπελάσεις Μνήμης στον MIPS Μανόλης Γ.Η. Κατεβαίνης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: (Μέρος Α ) Ενσωματωμένα Συστήματα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής

Διαβάστε περισσότερα

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Κ. Δεμέστιχας Εργαστήριο Πληροφορικής Γεωπονικό Πανεπιστήμιο Αθηνών Επικοινωνία μέσω e-mail: cdemest@aua.gr, cdemest@cn.ntua.gr 1 2. ΑΡΙΘΜΗΤΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΜΕΡΟΣ Α 2 Τεχνολογία

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ 4 ο Εξάμηνο Μαδεμλής Ιωάννης MSc Ηλεκτρονικός Φυσικός Αντικείμενο: ΠΡΟΦΙΛ ΜΑΘΗΜΑΤΟΣ Προγραμματισμός σε γλώσσα Assembly Σκοπός: Γνώση της assembly από τους απόφοιτους του τμήματος

Διαβάστε περισσότερα

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07 Ενότητα 4 Εισαγωγή στην Πληροφορική Κεφάλαιο 4Α: Αναπαράσταση πληροφορίας Κεφάλαιο 4Β: Επεξεργαστές που χρησιµοποιούνται σε PCs Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή

Διαβάστε περισσότερα