Προγραμματισμός Η/Υ (ΤΛ2007 )

Σχετικά έγγραφα
Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006)

ΤΙ ΕΙΝΑΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

ΠΛΗΡΟΦΟΡΙΚΉ. Μάθημα 7

Β1.1 Αναπαράσταση Δεδομένων και Χωρητικότητα Μονάδων Αποθήκευσης

Εισαγωγή στον Προγραμματισμό

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

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

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία

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

ΠΛΗΡΟΦΟΡΙΚΗ: ΥΠΟΛΟΓΙΣΤΕΣ & ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07

Βασικές Έννοιες Πληροφορικής

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

Περιεχόμενο: Δομή υπολογιστή Συστήματα αρίθμησης

Πρόγραμμα Επικαιροποίησης Γνώσεων Αποφοίτων ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

Αριθμητικά Συστήματα Η ανάγκη του ανθρώπου για μετρήσεις οδήγησε αρχικά στην επινόηση των αριθμών Κατόπιν, στην επινόηση συμβόλων για τη παράσταση

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 5

Εισαγωγή στους Η/Υ & Εφαρμογές

ΗΜΜΥ 100 Εισαγωγή στην Τεχνολογία

Κεφάλαιο 2. Συστήματα Αρίθμησης και Αναπαράσταση Πληροφορίας. Περιεχόμενα. 2.1 Αριθμητικά Συστήματα. Εισαγωγή

10-δικό δικό

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία

Περιεχόµενα. οµή Η/Υ: Αναπαράσταση εδοµένων. υαδικό σύστηµα. Συστήµατα Αρίθµησης υαδικό Οκταδικό εκαεξαδικό Παραδείγµατα

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Δυαδικό Σύστημα Αρίθμησης

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

Προγραμματισμός Η/Υ (ΤΛ2007 )

Ελίνα Μακρή

Αναπαράσταση Δεδομένων

Δομημένος Προγραμματισμός (ΤΛ1006)

Αρχιτεκτονική Eckert-von Neumann. Πως λειτουργεί η ΚΜΕ; Κεντρική μονάδα επεξεργασίας [3] ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Συστήματα Αρίθμησης. Συστήματα Αρίθμησης 1. PDF created with FinePrint pdffactory Pro trial version

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

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 9

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

ΘΕΜΑ : ΣΥΣΤΗΜΑΤΑ ΑΡΙΘΜΗΣΗΣ. ΔΙΑΡΚΕΙΑ: 1 περιόδους. 22/1/ :11 Όνομα: Λεκάκης Κωνσταντίνος καθ. Τεχνολογίας

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 4 ο Πράξεις με bits. Δρ.

Σύντοµη Ιστορία της Πληροφορικής

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Αναπαράσταση Αριθμών

Βασικές Έννοιες της Πληροφορικής

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 9

2. ΑΡΙΘΜΗΤΙΚΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. 2.1 Αριθμητικά συστήματα

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 2 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ...30

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

Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος

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

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

Τετάρτη 5-12/11/2014. ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ

Μάθημα 3: Αρχιτεκτονική Υπολογιστών

Το υλικό του υπολογιστή

ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ

Εισαγωγή στον Προγραμματισμό Θεωρία 1 η Διάλεξη: Βασικές Έννοιες Αρχιτεκτονικής ΗΥ

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

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές (ΗΥ)

Εισαγωγή στην Πληροφορική ΓΕΝΙΚΟ ΤΜΗΜΑ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ TEI ΧΑΛΚΙ ΑΣ

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

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

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τα επιμέρους τμήματα Η ΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ. Αναπαράσταση μεγεθών. Αναλογική αναπαράσταση ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΜΟΝΑ Α ΕΛΕΓΧΟΥ

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Μαλούτα Θεανώ Σελίδα 1

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ ΣΗΜΕΡΑ Ιστορική αναδρομή Υπολογιστικές μηχανές

ΠΛΗ10 Κεφάλαιο 2. ΠΛΗ10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή

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

Φουκαράκη Χρυσούλα - ΓΕΛ Γαζίου

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ. Εργαστήριο Πληροφορικής στη Γεωργία ΠΛΗΡΟΦΟΡΙΚΗ Ι

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

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

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

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

Ψηφιακή Σχεδίαση Τ.Ε.Ι. Κρήτης Σχολή Τεχνολογικών Εφαρμογών Τμ. Μηχανικών Πληροφορικής Χειμερινό Εξάμηνο

Αριθμητικά Συστήματα = 3 x x x x 10 0

Λογικός Σχεδιασµός και Σχεδιασµός Η/Υ. ΗΜΥ-210: Εαρινό Εξάµηνο Σκοπός του µαθήµατος. Ψηφιακά Συστήµατα. Περίληψη. Εύρος Τάσης (Voltage(

Δομημένος Προγραμματισμός (ΤΛ1006)

Σημειώσεις : Χρήστος Μουρατίδης. Κάντε κλικ για έναρξη

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

MULTIPLE CHOICE REVISION: ΜΑΘΗΜΑ 1-2

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων.

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

Κεφάλαιο 1. Συστήματα αρίθμησης και αναπαράστασης

Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών

Προγραμματισμός Υπολογιστών

ΚΕΦΑΛΑΙΟ 1 Ψηφιακός Κόσμος

Ελίνα Μακρή

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Τμήμα Λογιστικής. 1 Στέργιος Παλαμάς

Δεδομένα & Αναπαράσταση Πληροφορίας

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

Προγραμματισμός Η/Υ. 1 η ενότητα: Εισαγωγή στις γλώσσες προγραμματισμού. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων

Συστήματα αρίθμησης. = α n-1 *b n-1 + a n-2 *b n-2 + +a 1 b 1 + a 0 όπου τα 0 a i b-1

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

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων

0 κ. Αντης Χατζηβασιλείου, Διευθυντής της Εταιρείας DATACOM παραδίδει στον κ. Σάββα Πετρίδη ένα Η.Υ. δώρο στην ΚΕΕΒ για τις μηχανογραφικές ανάγκες

Transcript:

Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Πρώτη (1 η ) τρίωρη διάλεξη. Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2016-17

ΑΝΤΙΚΕΙΜΕΝΟ ΤΟΥ ΜΑΘΗΜΑΤΟΣ Βασικές έννοιες και δομή του Η/Υ Εισαγωγή στον Προγραμματισμό Η γλώσσα C Έννοιες της σχεδίασης και της ανάπτυξης λογισμικού Τι θα σας προσφέρει το μάθημα Βασικές γνώσεις Η/Υ και πληροφορικής Βασικές γνώσεις για την λειτουργία, την δομή, και την μεταγλώττιση των προγραμμάτων Την δυνατότητα να βρίσκετε την αλγοριθμική λύση ενός προβλήματος με έως μέτρια δυσκολία Την δυνατότητα να σχεδιάζετε λογισμικό και να γράφετε κώδικα σε γλώσσα C. 2

Τρόπος Εξέτασης & Βαθμολογία Ενοποίηση Θεωρίας και Εργαστηρίου (ΕΝΑΣ ΒΑΘΜΟΣ) Δίνονται γραπτές εξετάσεις προόδου στο εργαστήριο Δίνονται τελικές γραπτές εξετάσεις στην θεωρία στις οποίες πρέπει να λάβετε προβιβάσιμο βαθμό ( 5,00) Αν, και μόνο αν, ο τελικός βαθμός είναι προβιβάσιμος μπορεί να βελτιωθεί κατόπιν επιβράβευσης (bonus) : α) με την προσκόμιση 40 ασκήσεων από όλη την ύλη (σύμφωνα με τις οδηγίες που έχουν αναρτηθεί στο e-class) β) παρακολουθώντας την θεωρία συστηματικά. 3

Εργαστήρια Στο εργαστηριακό μέρος του μαθήματος θα γίνονται ασκήσεις άμεσα σχετιζόμενες με την θεωρία γι αυτό θα πρέπει να παρακολουθείτε και την θεωρία ανελλιπώς Υπεύθυνοι Εργαστηρίων: Κωνσταντάρας Αντώνιος Μανιαδάκης Δημήτριος Γεωργιλάς Γεώργιος 4

Βιβλία «Η γλώσσα C σε βάθος», Νίκος Χατζηγιαννάκης, Εκδόσεις Κλειδάριθμος «C: από την θεωρία στην Εφαρμογή», Γ.Σ. Τσελίκης και Ν.Δ. Τσελίκας, Β Έκδοση 2012 «C για Μηχανικούς», H.Tan, D Orazio, (μετάφραση Δ. Μανωλάκη, Χ. Πολάτογλου) Εκδόσεις Τζιόλα «C για Αρχάριους», Β. Σεφερίδης, Εκδόσεις Κλειδάριθμος Σημειώσεις διδάσκοντος στο e-class 5

ΜΑΘΗΜΑ 1 0 Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Οργάνωση, δομή και λειτουργία Η/Υ. Τα προγράμματα του υπολογιστή Εισαγωγικές έννοιες για την επίλυση προβλημάτων και τον προγραμματισμό. 6

ΤΙ ΕΙΝΑΙ Ο Η/Υ; Σημείωση: Ο όρος χρησιμοποιείται ως συντόμευση για την έννοια «Αυτόματος, Ηλεκτρονικός Ψηφιακός Υπολογιστής Γενικού Σκοπού» Ο Ηλεκτρονικός Υπολογιστής είναι μία περίπλοκη ηλεκτρονική συσκευή, που έχει τη δυνατότητα να επεξεργάζεται πολύ γρήγορα και με ακρίβεια τεράστιο όγκο πληροφοριών. Πληροφορική είναι η επιστήμη που έχει ως αντικείμενο τη συλλογή, επεξεργασία, φύλαξη και μετάδοση των πληροφοριών, με τη βοήθεια του υπολογιστή. 7

Μονάδες μέτρησης πληροφορίας Η ελάχιστη ποσότητα πληροφορίας στους ηλεκτρονικούς υπολογιστές είναι το ένα δυαδικό ψηφίο (bit = binary digit) που μπορεί να λάβει τιμή 0 ή 1. Μια οχτάδα τέτοιων ψηφίων αποτελούν μία ψηφιολέξη (byte) που είναι η μονάδα μέτρησης της χωρητικότητας των διαφόρων τμημάτων του Η/Υ. Στη πράξη χρησιμοποιούμε πολλαπλάσια αυτής: KiloByte 1KB = 2 10 Bytes = 1024 Bytes, MegaByte 1MB = 2 20 Bytes = 2 10 KB = 1.048.576 Bytes, GigaByte 1GB = 2 30 Bytes = 2 10 MB = 1024 MB, TeraByte 1TB = 2 40 Bytes = 2 10 GB. PetaByte 1PB = 2 50 Bytes και έπεται συνέχεια όπως: ExaByte, ZettaByte, YottaByte. 8

ΤΙ ΔΕΝ ΕΙΝΑΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ Δεν είναι Ηλεκτρονικός Εγκέφαλος. Δεν είναι απλή αριθμομηχανή. Δεν είναι αυτόνομη λογικά σκεπτόμενη μονάδα. Δεν έχει ανεξάρτητη λειτουργία πέρα από το πρόγραμμα πού έχει ορισθεί να εκτελέσει πιστά. Δεν είναι σε θέση να εκτελέσει λειτουργίες οι οποίες δεν έχουν ορισθεί και μοντελοποιηθεί με ακρίβεια. 9

ΟΙ Η/Υ ΜΠΟΡΟΥΝ Να επεξεργασθούν τεράστιους όγκους μοντελοποιημένων δεδομένων (data modelling and data representation). Να εκτελέσουν πιστά επαναληπτικές, πολύπλοκες, και μακρές διαδικασίες (algorithms and processes). Να επιλύσουν παραμετρικά, μοντελοποιημένα προβλήματα με υψηλή απόδοση, και αξιοπιστία (performance time/space, reliability/robustness). 10

ΙΣΤΟΡΙΚΗ ΑΝΑΔΡΟΜΗ Μηχανισμός Αντικυθήρων, 87 πχ Ράβδοι του Napier (Λογαριθμικός Κανόνας) 1600 Αριθμητική Μηχανή του Pascal 1642 Μηχανοποίηση του Πολ/σμού Leibnitz 1694 Υφαντουργική Μηχανή με κάρτες Jacquard - 1745 Διαφορική Μηχανή Babbage 1822 Αναλυτική Μηχανή (Μνήμη, έλεγχος ροής, αριθμητική υπολογιστική μονάδα, μονάδες εισόδου/εξόδου Parmalee, Webb, Babbage 1868 Ηλεκτρομηχανική μηχανή με διάτρητα δελτία Hollerith 1891 Πρώτη αυτόματη υπολογιστική μηχανή ΙΒΜ 1929 Υπολογιστής με Ηλεκτρονόμους από την Bell Telephone Labs - 1938 Ψηφιακός Η/Υ ENIAC 1946 UNIVAC 1951 Υπολογιστές με Μαγνητικό Τύμπανο 1953 Υπολογιστές με δίσκους 1970 s micro computers Personal Computers 80 s Super Computers 80 s 90 s Ubiquitous Computing and Devices (Πανταχού παρών υπολογισμός) από το 1990 και μετά. 11

ΙΣΤΟΡΙΚΗ ΑΝΑΔΡΟΜΗ Διαφορική Μηχανή Babbage 1822 London Science Museum (Copy) 12

ΙΣΤΟΡΙΚΗ ΑΝΑΔΡΟΜΗ Ψηφιακός Η/Υ ENIAC 1946 13

ΟΡΓΑΝΩΣΗ ΚΑΙ ΔΟΜΗ ΤΟΥ Η/Υ Ο Η/Υ είναι μια επαναπρογραμματιζόμενη συσκευή επεξεργασίας πληροφοριών. Ο τυπικός Η/Υ αποτελείται από τα εξής μέρη: Μονάδα Εισόδου (Input) Κεντρική Μνήμη (Memory) Αριθμητική/Λογική Μονάδα (Arithmetic and Logic Unit) Μονάδα Ελέγχου (Control Unit) Μονάδα Εξόδου (Output) 14

Τα λειτουργικά υποσυστήματα ενός Ηλεκτρονικού Υπολογιστή 15

ΜΟΝΑΔA ΕΙΣΟΔΟΥ Το υποσύστημα το οποίο κωδικοποιεί τις πληροφορίες που προέρχονται από το εξωτερικό περιβάλλον. Πληκτρολόγιο (keyboard) Ποντίκι (mouse) Ευαίσθητες επιφάνειες (smart panels) Συσκευές ανάγνωσης μαγνητικών καρτών (magnetic card readers) Συσκευές ανάγνωσης ήχου και εικόνας (sound and image acquisition) Συσκευές μετρήσεων (sensors) κ.λ.π. 16

ΜΟΝΑΔΑ ΕΞΟΔΟΥ Το υποσύστημα το οποίο απο-κωδικοποιεί τις πληροφορίες που προέρχονται από τον Η/Υ και τις διανέμει προς το εξωτερικό περιβάλλον. Οθόνη (display) Εκτυπωτής (printer) Σχεδιογράφος (plotter) Συσκευές ήχου (audio) Ηλεκτρομηχανικές συσκευές (actuators) κ.λ.π. 17

ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ Το υποσύστημα το οποίο είναι υπεύθυνο για την προσωρινή αποθήκευση όλων των πληροφοριών (εντολές και δεδομένα) που είναι απαραίτητες για την λειτουργία του Η/Υ και την εκτέλεση ενός προγράμματος. Η Κεντρική Μνήμη επικοινωνεί με τις Μονάδες Εισόδου/Εξόδου, την Αριθμητική & Λογική Μονάδα, και την Μονάδα Ελέγχου. Τα τεχνικά χαρακτηριστικά της Κεντρικής Μνήμης είναι Χωρητικότητα Ταχύτητα Η μνήμη μπορεί να θεωρηθεί σαν ένα σύνολο από θήκες. Κάθε θήκη έχει μία αριθμητική διεύθυνση και μπορεί να αποθηκεύσει μία μικρή και συγκεκριμένη πληροφορία. Αυτή η πληροφορία μπορεί να είναι είτε μία εντολή, η οποία υπαγορεύει στον Η/Υ τι να κάνει, είτε δεδομένα τα οποία χρειάζεται ο υπολογιστής για να εκτελέσει τις εντολές που ήδη υπάρχουν στη μνήμη του. 18

ΑΡΙΘΜΗΤΙΚΗ και ΛΟΓΙΚΗ ΜΟΝΑΔΑ Η «καρδιά» του υπολογιστή. Το υποσύστημα το οποίο είναι υπεύθυνο για τον μετασχηματισμό των κωδικοποιημένων ψηφιακών πληροφοριών. Οι μετασχηματισμοί είναι Αριθμητικές πράξεις (Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση κλπ), Λογικές πράξεις (AND, OR, NOT, XOR) ή πράξεις συγκρίσεων 19

ΛΟΓΙΚΕΣ ΠΡΑΞΕΙΣ Δίτιμη Άλγεβρα Boole Λογικές πράξεις μεταξύ δυαδικών ψηφίων {0, 1} Παραδείγματα: AND, OR, XOR Πίνακες αλήθειας (0 = False, 1 = True) Είσοδοι Σύζευξη Διάζευξη Αποκλειστική Διάζευξη A B A AND B A OR B A XOR B 0 0 0 0 0 0 1 0 1 1 1 0 0 1 1 1 1 1 1 0 20

ΜΟΝΑΔΑ ΕΛΕΓΧΟΥ Το υποσύστημα το οποίο είναι υπεύθυνο για τον συντονισμό της διαδοχής των πράξεων στην Αριθμητική & Λογική Μονάδα, και των υπολοίπων μονάδων του Η/Υ. Κατά τη διάρκεια εκτέλεσης ενός προγράμματος, η Μονάδα Ελέγχου λαμβάνει/διαβάζει εντολές (ηλεκτρικά σήματα - instructions) και στοιχεία (data) από τη μνήμη και σε καθορισμένες χρονικές στιγμές (περιοδικά) στέλνει σήματα ελέγχου/οδηγιών προς την Αριθμητική & Λογική Μονάδα, κατόπιν στέλνοντας τα αποτελέσματα πίσω στη μνήμη ή τις Μονάδες Εισόδου/Εξόδου. 21

CPU Η Μονάδα Ελέγχου μαζί με την Αριθμητική & Λογική Μονάδα αναφέρονται ως CPU (Central Processing Unit). Από τις αρχές της δεκαετίας του 1970, η CPU βρίσκεται σε ένα ολοκληρωμένο κύκλωμα το οποίο ονομάζεται μικροεπεξεργαστής (microprocessor). 22

Τα προγράμματα του Η/Υ Υπάρχουν δύο βασικές κατηγορίες προγραμμάτων: λογισμικό του συστήματος (system software) λειτουργικό σύστημα (operating system) μεταγλωττιστικά προγράμματα (compilers) βοηθητικά προγράμματα (utilities) λογισμικό των εφαρμογών (application software). 23

Γενικά Περί Γλωσσών Προγραμματισμού Συντακτικό και Ερμηνεία Το συντακτικό ορίζει τους γραμματικούς κανόνες για μία σωστά δομημένη πρόταση, ενώ η ερμηνεία ορίζει την σημασία της πρότασης Γλώσσα Μηχανής ή κώδικας μηχανής (machine code) Είναι σε δυαδική μορφή, άμεσα κατανοητή από το υλικό Συμβολική Γλώσσα Είναι σε συμβολική μορφή και κάθε εντολή αντιστοιχεί με μια εντολή κώδικα μηχανής πιο βολική για τον άνθρωπο Γλώσσες Υψηλού Επιπέδου Προγραμματισμού (source code) Είναι σε συμβολική μορφή και κάθε εντολή μοιάζει με Αγγλικά (στις περισσότερες γλώσσες προγραμματισμού) Σε κάθε περίπτωση χρειαζόμαστε κάποιους μεταφραστές από τη μία μορφή (γλώσσα) στην άλλη: - Συμβολομεταφραστές (assemblers) και - Μεταγλωττιστές (compilers) 24

Μετταγλώττιση στην πράξη Ο μετταγλωττιστής παίρνει το αρχείο πηγαίου κώδικα ως είσοδο και δημιουργεί ένα αρχείο δίσκου το οποίο περιέχει τις οδηγίες γλώσσας μηχανής οι οποίες αντιστοιχούν στις προτάσεις του πηγαίου κώδικα. 1. Μετάφραση και Συμβολομετάφραση: Tα βήματα αυτά παράγουν αντικείμενο κώδικα object code (σχεδόν γλώσσα μηχανής) 2. Ενοποίηση (linking): Το βήμα αυτό ενοποιεί αντικείμενο κώδικα (πιθανόν από διαφορετικά αρχεία πηγαίου κώδικα) σε ένα εκτελέσιμο αρχείο (π.χ..exe) σε καθαρή γλώσσα μηχανής. 25

ΕΚΤΕΛΕΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ Μόλις το πρόγραμμα μεταγλωττιστεί και δημιουργηθεί το εκτελέσιμο αρχείο μπορούμε να το εκτελέσουμε εισάγοντας το όνομά του. 1. Εάν εκτελείτε το πρόγραμμα και λαμβάνετε αποτελέσματα διαφορετικά από τα αναμενόμενα πρέπει να προσδιορίσετε τι προκάλεσε το πρόβλημα και να διορθώσετε τον πηγαίο κώδικα. 2. Αν κάνετε μία οποιαδήποτε αλλαγή στον πηγαίο κώδικα, χρειάζεται να τον μεταγλωττίσετε (compile) εκ νέου για να δημιουργήσετε την διορθωμένη έκδοση του εκτελέσιμου αρχείου. 3. Επαναλάβετε τα παραπάνω βήματα μέχρι την επίτευξη του επιθυμητού αποτελέσματος. 26

Ανασκόπηση Γενικά Ιστορικά στοιχεία περί της εξέλιξης των Η/Υ. Οργάνωση δομή και λειτουργία των Η/Υ. Γενικές αρχές για τις Γλώσσες Προγραμματισμού. Εισαγωγικές έννοιες για τη μετάφραση και συμβολομετάφραση προγραμμάτων. 27

Αριθμητικά συστήματα και μετατροπές από το ένα σύστημα στο άλλο. Δυαδικό βάση = 2 =2 1 Οκταδικό βάση = 8 =2 3 Δεκαεξαδικό βάση = 16 =2 4 Δεκαδικό βάση = 10 28

Πίνακας αντιστοίχησης Δεκαδικό Δυαδικό Οκταδικό Δεκαεξαδικό 0 0 0 0 1 1 1 1 2 10 2 2 3 11 3 3 4 100 4 4 5 101 5 5 6 110 6 6 7 111 7 7 8 1000 10 8 9 1001 11 9 10 1010 12 Α 11 1011 13 B 12 1100 14 C 13 1101 15 D 14 1110 16 E 15 1111 17 F 16 10000 20 10 17 10001 21 11 29

Η μετατροπή ενός αριθμού από το δυαδικό στο οκταδικό ή το δεκαεξαδικό σύστημα αρίθμησης (και αντίστροφα) γίνεται απευθείας, χωρίς να χρειαστεί ενδιάμεσα το πέρασμα από το δεκαδικό σύστημα. Για να μετατρέψουμε έναν αριθμό από το οκταδικό ή το δεκαεξαδικό σύστημα στο δυαδικό, αρκεί να αντικαταστήσουμε κάθε ψηφίο τού αριθμού τού πρώτου συστήματος με την ακολουθία δυαδικών ψηφίων που αντιστοιχούν στο ψηφίο αυτό. Πάντα αντικαθιστούμε ένα ψηφίο οκταδικού αριθμού με τρία δυαδικά ψηφία ενώ ένα ψηφίο δεκαεξαδικού αριθμού με τέσσερα δυαδικά ψηφία. Παραδείγματα: 30

Για να μετατρέψουμε (υπολογίσουμε) έναν αριθμό από οποιοδήποτε αριθμητικό σύστημα στο δεκαδικό, υπολογίζουμε το άθροισμα των γινομένων της αξίας του κάθε ψηφίου του επί την αξία της θέσεως που αυτό κατέχει. Για να μετατρέψουμε έναν αριθμό από το δεκαδικό σύστημα αρίθμησης σε οποιοδήποτε άλλο αριθμητικό σύστημα, διενεργούμε διαδοχικές διαιρέσεις δια της βάσης του νέου αριθμητικού συστήματος μέχρι να λάβουμε πηλίκο μηδέν. Τα υπόλοιπα των διαιρέσεων με την αντίστροφη σειρά αποτελούν τα ζητούμενα ψηφία του αριθμού στο νέο αριθμητικό σύστημα. 31

Δυαδικοί Αριθμοί Ένας δυαδικός αριθμός είναι μια ακολουθία από 0 και 1. Η μετατροπή ενός δυαδικού αριθμού με υποδιαστολή όπως π.χ. b 4 b 3 b 2 b 1 b 0. b -1 b -2 b -3 (2) στο δεκαδικό προκύπτει από: υποδιαστολή (b 4 X 2 4 ) + (b 3 X 2 3 ) + (b 2 X 2 2 ) + (b 1 X 2 1 ) + (b 0 X 2 0 ) + (b -1 X 2-1 ) + (b -2 X 2-2 ) + (b -3 X 2-3 ) Οπότε: 10111.101 (2) = 23.625 (10) 32

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

Μετατροπή πραγματικού αριθμού (2) Β τρόπος: Μετατρέπουμε χωριστά το ακέραιο τμήμα όπως ήδη γνωρίζουμε και χωριστά το δεκαδικό τμήμα (το τμήμα δεξιά της υποδιαστολής) του αριθμού. Για τη μετατροπή του δεκαδικού τμήματος το πολλαπλασιάζομε με τη βάση του νέου συστήματος διαδοχικά, παίρνοντας κάθε φορά το ακέραιο τμήμα του κάθε γινομένου σχηματίζοντας έτσι τα ψηφία του αριθμού μετά την υποδιαστολή. Π.χ. Να μετατραπεί ο αριθμός 330,525 (10) του δεκαδικού συστήματος αρίθμησης στο δυαδικό σύστημα αρίθμησης με τρία ψηφία ακρίβεια μετά την υποδιαστολή. Κάντε αρκετά παραδείγματα, όπως αυτά που δείξαμε στον πίνακα. Ασφαλώς μπορείτε να τα συμπεριλάβετε και στο τετράδιο ασκήσεων. 34