(Ψηφιακοί)Υπολογιστές ENIAC Πληροφορική και Υπολογιστές. ΕΠΛ 031: Εισαγωγή στον (FORTRAN) Γιώργος Χρυσάνθου. Ποτε? ~1940 ΕΝΙΑC. Γιατι?

Σχετικά έγγραφα
Πληροφορική και Υπολογιστές

ΕΠΛ Εισαγωγή στον Προγραµµατισµό: Λογισµικό. Το λογισµικό του συστήµατος: 1 Εισαγωγή ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

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

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

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

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

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

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

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

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

Πληροφορίες. Εισαγωγή στην Πληροφορική. Κατηγορίες υλισµικού. Περίληψη µαθήµατος (συνέχεια) Επεξεργαστής Μνήµη. Χειµερινό Εξάµηνο

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

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

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

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

Ηλεκτρονικοί Υπολογιστές Δ Εξάμηνο

ΕΠΛ 131 ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ι

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

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

Το «κλειστό» σύστημα. Ανοικτές επικοινωνίες... Εισαγωγή στην Τεχνολογία της Πληροφορικής. Εισαγωγή στην τεχνολογία της πληροφορικής

Το εσωτερικό ενός PC. Τεχνολογία Η/Υ & Πληροφοριών - 05 Κεντρική μονάδα Χουρδάκης Μανόλης

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

Κεφάλαιο 1 Αφαιρετικότητα και Τεχνολογία Υπολογιστών (Computer Abstractions and Technology)

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

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

Περιεχόµενα. Ανασκόπηση - Ορισµοί. Ο κύκλος ανάπτυξης προγράµµατος. Γλώσσες Προγραµµατισµού Ασκήσεις

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

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

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

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

ΚΕΦΑΛΑΙΟ 1 ΥΛΙΚΟ ΥΠΟΛΟΓΙΣΤΩΝ

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

Κεφάλαιο 6 ο. Διαχείριση στοιχείων λογισμικού

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

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού

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

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

ΜΑΘΗΜΑ 1- MULTIPLE CHOICE

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

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

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

Ηλεκτρονικοί Υπολογιστές και Επεξεργασία Πληροφοριών

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

3. Προσωπικός Ηλεκτρονικός Υπολογιστής (Personal Computer - PC)

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

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον κεφ.6 Εισαγωγή στον Προγραμματισμό

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

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

ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. 03/01/09 Χαράλαμπος Τζόκας 1

Εισαγωγή στην επιστήµη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

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

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

Information Technology for Business

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

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους.

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

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

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

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

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

ΜΑΘΗΜΑ 2 MULTIPLE CHOICE

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

Κύρια & Περιφερειακή Μνήµη

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

Γλώσσες υψηλού επιπέδου Περιέχουν περισσότερες εντολές για την εκτέλεση πολύπλοκων εργασιών Τα προγράµµατα µεταφράζονται σε γλώσσα µηχανής είτε από το

Εισαγωγή. Ανάπτυξη Συστημάτων Λογισμικού. Οργάνωση μαθήματος. #1. Εισαγωγή στον Προγραμματισμό

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

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

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

Διαγώνισμα Α Τριμήνου Καλή Επιτυχία

Β τάξη. ΕΝΟΤΗΤΑ 1 Κεφάλαιο 2: Το εσωτερικό του Υπολογιστή. Εικόνα 2.1: Η Κεντρική Μονάδα.

Επιµέλεια Θοδωρής Πιερράτος

Λογισμικό - Προγράμματα

Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων. 1. Εισαγωγή. Ιωάννης Κατάκης. ΕΠΛ 032: Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων

Προγραμματισμός Η/Υ. Προτεινόμενα θέματα εξετάσεων Εργαστήριο. Μέρος 1 ό. ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής

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

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

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

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

Το υλικό του υπολογιστή. Υλικό (hardware) είναι οτιδήποτε έχει μια υλικήφυσική υπόσταση σε ένα υπολογιστικό σύστημα.

ΛΟΓΙΣΜΙΚΟ (software)

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

6. 1 Η έννοια του προγράμματος

ΚΑΤΑΝΟΗΣΗ ΑΝΑΛΥΣΗ ΕΠΙΛΥΣΗ. Ο προγραμματισμός ασχολείται με το σύνολο των εντολών που δίνονται στον υπολογιστή ώστε να υλοποιείται ο αλγόριθμος.

Μνήμη. Μνήμη. Κύρια μνήμη Δευτερεύουσα ή βοηθητική

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

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Σημειώσεις Θεωρίας

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

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

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

TEI Ιονίων Νήσων Τμήμα Τεχνολογίας Τροφίμων Πληροφορική Σημειώσεις Τεύχος 3. Μάκης Σταματελάτος

Μέρος Α. Λογισµικό & Προγράµµατα συστήµατος και εφαρµογών ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ. Το σηµερινό µάθηµα. Λογισµικό συστηµάτων & εφαρµογών

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

ΕΙΣΑΓΩΓΗ. Αρχιτεκτονική Η/Υ ΗΜΟΣ ΜΠΟΛΑΝΑΚΗΣ

Α. Ερωτήσεις Ανάπτυξης

Κεφάλαιο 2.4: Εργασία με εικονίδια

Αρχιτεκτονική Μικροεπεξεργαστών MIPS-32. Αρχείο καταχωρητών και Χάρτης Μνήµης

Transcript:

1 ΕΠΛ 031: Εισαγωγή στον προγραµµατισµό (FORTRAN) Γιώργος Χρυσάνθου Πληροφορική και Υπολογιστές Αρχη πριν 50 χρονια Υπολογιστες ειναι παντου Παρα παρα πολλες εφαρµογες Γιατί; Αυτοµατοποιηση Απλοποιηση Αποτελεσµατικοτητα Κοστος epl-031 1 epl-031 2 (Ψηφιακοί)Υπολογιστές Ποτε? ~1940 ΕΝΙΑC ηλεκτρονικοι (electronic), διακριτικοι (discrete) 0 ή 1 Γιατι? στρατιωτικούς σκοπους (υπολογισµους ατοµικη βοµβα) απογραφη πληθυσµου (τελειωνε µετα τον εποµενο) 1960: εκατο υπολογιστες καθενας στοιχιζε δεκαδες εκατοµµυρια λιρες 2001: δισεκατοµµυρια υπολογιστες πλειστα στοιχιζουν µερικες 100δες λιρες epl-031 3 ENIAC 1946 epl-031 4 Προγραµµατισµός 1960: γλωσσα µηχανης ή συµβολική γλωσσα. Ραγδαία Αναπτυξη Υποδοµής Λογισµικού Μεταγλωτιστες, Λειτουργικά Συστήµατα 2001: γλωσσες ψηλου/χαµηλου επιπεδου, templates, visual, agents (coming) epl-031 5 0x4010b8 <main>: push %ebp 0x4010b9 <main+1>: mov %esp,%ebp 0x4010bb <main+3>: sub $0x10,%esp 0x4010be <main+6>: call 0x401280 0x4010c3 <main+11>: push $0x401080 0x4010c8 <main+16>: call 0x401290 0x4010cd <main+21>: add $0x4,%esp 0x4010d0 <main+24>: lea 0xfffffff4(%ebp),%eax 0x4010d3 <main+27>: push %eax 0x4010d4 <main+28>: lea 0xfffffff8(%ebp),%eax 0x4010d7 <main+31>: push %eax 0x4010d8 <main+32>: lea 0xfffffffc(%ebp),%eax 0x4010db <main+35>: push %eax 0x4010dc <main+36>: push $0x4010ae 0x4010e1 <main+41>: call 0x401288 0x4010e6 <main+46>: add $0x10,%esp 0x4010e9 <main+49>: xor %eax,%eax 0x4010eb <main+51>: jmp 0x4010f0 0x4010ed <main+53>: lea 0x0(%esi),%esi 0x4010f0 <main+56>: mov %ebp,%esp 0x4010f2 <main+58>: pop %ebp epl-031 6 0x4010f3 <main+59>: ret

2 PROGRAM HELLO CHARACTER *10 NAME PRINT *, Enter your name and press return READ *, NAME PRINT *, Hello NAME STOP END epl-031 7 2001: Κοινωνία Πληροφορικής Επανασταση Πληροφορικης: ιαδικτυο τροµερη διευκολυνση στην προσβαση πληροφοριων Φασµα Αγορας Υπολογιστων (low to high end) mobile, palmtop, embedded, personal computer(pc) ψηλης αποδοσης PCs, workstations servers (συχνα µε πολλους υπολογιστες <32) multiprocessors (32 µε 200) supercomputers, massively parallel (>1000) epl-031 8 Palmtop/Notebook Πρoσωπικός Υπολογιστής(Sony) Casio Palmtop Apple Notebook epl-031 9 epl-031 10 SuperComputers 1990-2000 2001: Κοινωνία Πληροφορικής Cray T3-E 2048 nodes CM-5 1024 nodes epl-031 11 Εφαρµογες Hλεκτρονικο εµποριο (e-commerce) Προσβαση, Φυλαξη και Επεξεργασια εδοµενων...εκατοµµυρια δεδοµενα/συναλλαγες (text ~10 15 bytes) Προσοµoιωση/Simulations σχεδιασµος, λειτουργικοτητα, αποδοση, crash simulation (αεροπλανα, αυτοκινητα, υπολογιστες, εργα, αποστολες) Εξυπνα Συστηµατα: αυτοκινητα, ηλεκτρονικες συσκευες Αναψυχη: παιγνιδια, virtual reality, οπτικοακουστικα epl-031 12

3 Ενάς Υπολογιστής Αποτελειται απο: Σιδερικά ;) Υλικο (hardware) οθονη, πληκτρολογιο, ποντικι, µνηµη, επεξεργαστη, modem, ethernet card, εκτυπωτες, δισκακι, σκληρος, CD, scanner Προγραµµατα/Λογισµικο (software) λειτουργικο συστηµα, µεταγλωτιστης, επεξεργασιας δεδοµενων (κειµενο, αριθµων, εικονας, ηχου) παιγνιδια (tetris) Βασική οµή Hardware Πληκτρολογιο Ποντικι Εισοδος input Επεξεργασια processing Πρωτευουσα Μνηµη Επεξεργαστης CD, δισκος (hard, floppy), modem Εξοδος output Προσβαση σε ευτερευουσα Μνηµη, ικτυο, ιαδυκτυο Οθονη Εκτυπωτης epl-031 13 epl-031 14 Είσοδος/Εξόδος Χρησιµοποιειται για την εισαγωγη/εξαγωγη δεδοµενων απο/στον χρηστη Εισοδος επεξεργασια κειµενου (προγραµµακτλ) δεδοµενα σε προγραµµα Εξοδος κατασταση προγραµµατος αποτελεσµα προγραµµατος Μνήµη Αποθηκευσης/Ανακτηση πληροφοριων προγραµµατα και δεδοµενα Αποτελείται από ένα σύνολο κυψελίδων memory cells Καθε κυψελιδα εχει µοναδικη διευθυνση και περιεχοµενο (διαταγες ή δεδοµενα) epl-031 15 epl-031 16 Μνήµη ιεύθυνση Περιεχόµενα 0 1 2... 1021 1022 1023 εοds 123 err12 15.er3 0.,d% yiasou epl-031 17 Μνήµη Μοναδες µετρησης µνηµης bit-b 0 ή 1 byte -B 8 bits 10010010 2 92 h word 4 bytes 80ffaf45 h doubleword 2 words ή 8 bytes KiloByte-KB 2 10 ή 1024 bytes MegaByte-MB 2 20 bytes GigaByte-GB 2 30 bytes TeraByte-TB 2 40 bytes epl-031 18

4 Ιεραρχία Μνήµης µεγαλη Μεγεθος, Ταχυτητα, Κοστος µικρη χαµηλη ψηλη χαµηλο ψηλο Cache 16KB-64KB (SRAM) 2nd Level Cache 256KB-2ΜΒ(SRAM) Main Memory 32ΜΒ-1GB (DRAM) Secondary Memory1GB-100GB (hard,cd) epl-031 19 Ταξινοµήσεις Μνήµης Ισος χρονος προσβασης σε ολες τις κυψελιδες? ναι, µνηµη τυχαια προσβασης (Random Access Memory- RAM), π.χ. πρωτευουσα µνηµη οχι, π.χ. δευτερευουσα µνηµη hard disk Τυπος Αναγνωσης µονο αναγνωσης (Read Only Memory-ROM) αναγνωσης και αποθηκευσης (τυπικα RAM) epl-031 20 Ταξινοµήσεις Μνήµης ιαρκεια Αποθηκευσης µονιµη (non-volatile): µνήµη µόνο ανάγνωσης (ROM), CD- ROM, hard disk (µνηµη αναγνωσης και αποθηκευσης) προσκαιρη (volatile): τυπικα RAM π.χ. cache, main memory (µνηµη αναγνωσης και αποθηκευσης) Τεχνολογια: CMOS (ROM, RAM, SRAM, DRAM), Magnetic Disk (hard, floppy), Laser/Optical (CD-ROM) Ιστορική καινοτοµία της Μνηµης Εννοια Αποθηκευµένου Προγράµµατος (Stored Program Concept) (~1940): Οι εντολές που αποτελούν το πρόγραµµα αποθηκεύονται στην πρωτεύουσα µνήµη πριν την εκτέλεση του προγράµµατος Προηγουµενως ειχαµε µηχανες που ετρεχαν µονο ενα προγραµµα (calculator ΟΧΙ computer) Υπολογιστές Γενικής Χρήσεως (General Purpose Computers) epl-031 21 epl-031 22 (Μικρο)Επεξεργαστης Κεντρικη Μοναδα Επεξεργασιας microprocessor, up/µp, central processing unit, CPU Συντονίζει/αποφασίζει όλες τις λειτουργίες του υπολογιστή εκτελώντας αριθµητικές και λογικές πράξεις σε δεδοµένα. Αποτελειται απο Μοναδα Ελεγχου (Control Unit), Αριθµητικη Μοναδα (ALU) και Kαταχωρητες (Registers) epl-031 23 ίκτυο και ιαδίκτυο Τοπικο ικτυο (Local Area Network) υπολογιστες, disks, εκτυπωτες, scanners (π.χ. πακυ) ιαδικτυο (Wide Area Network) ενωνει τοπικα δικτυα (internet) Κρισιµες Παραµετροι: Ταχυτητα ενωσης (latency) και Πληροφοριες/δευτερολεπτο (bandwidth) epl-031 24

5 Λογισµικό Υπολογιστή Πρόγραµµα είναι ένα σύνολο εντολών γραµµένα σε γλώσσα που κατανοήται από τον υπολογιστή Υπολογιστης χωρις προγραµµαείναι λιγα γραµµαρια αχρηστων Επίπεδα Λογισµικού Λογισµικό Εφαρµογών ( Application Software) Γλώσσες Υπολογιστή (Computer Languages) Λειτουργικό Σύστηµα (Operating System) Υλικό (Hardware) epl-031 25 epl-031 26 Λειτουργικό Σύστηµα(OS) Γλωσσες Προγραµµατισµου Ελεγχει τη διεπαφή (interface) του χρηστη µε το hardware του υπολογιστη ιαχειριζεται την κατανοµη των πορων (resources) του υπολογιστη - π.χ. µνηµη, cpu, I/O Π.χ. unix, vms, ms-dos, windows, windows-nt epl-031 27 Καθε λογισµικο ειναι γραµµενο σε καποια γλωσσα προγραµµατισµου Basic, Lisp, Pascal, FORTRAN, COBOL, PL1, ADA, Prolog, C, C++, Java, Assembly, Machine Laguage Ορισµος Γλωσσας: Σύνταξη (syntax): Κανόνες γραµµατικής της γλώσσας. Σηµασιολογία (semantics): Τι σηµαίνουν οι προτάσεις της γλώσσας epl-031 28 Ταξινοµήση Γλωσσών Προγρ. Γλώσσα Χαµηλου Επιπέδου (low-level language) Κατανοητή µόνο από δεδοµένη κεντρική µονάδα επεξεργασίας (διαφορετικες αρχιτεκτονικες) Γλώσσα Μηχανής (machine language). Γλώσσα δυαδικών εντολών Συµβολική Γλώσσα (assembly language). Χρήση µνηµονικών κωδικών που αντιστοιχούν σε εντολές της γλώσσας µηχανής (δυσκολο-διαβαστη) Πιο γρηγορη (πιο λιγο overhead) epl-031 29 0x4010b8 <main>: push %ebp 0x4010b9 <main+1>: mov %esp,%ebp 0x4010bb <main+3>: sub $0x10,%esp 0x4010be <main+6>: call 0x401280 0x4010c3 <main+11>: push $0x401080 0x4010c8 <main+16>: call 0x401290 0x4010cd <main+21>: add $0x4,%esp 0x4010d0 <main+24>: lea 0xfffffff4(%ebp),%eax 0x4010d3 <main+27>: push %eax 0x4010d4 <main+28>: lea 0xfffffff8(%ebp),%eax 0x4010d7 <main+31>: push %eax 0x4010d8 <main+32>: lea 0xfffffffc(%ebp),%eax 0x4010db <main+35>: push %eax 0x4010dc <main+36>: push $0x4010ae 0x4010e1 <main+41>: call 0x401288 0x4010e6 <main+46>: add $0x10,%esp 0x4010e9 <main+49>: xor %eax,%eax 0x4010eb <main+51>: jmp 0x4010f0 0x4010ed <main+53>: lea 0x0(%esi),%esi 0x4010f0 <main+56>: mov %ebp,%esp 0x4010f2 <main+58>: pop %ebp epl-031 30 0x4010f3 <main+59>: ret

6 Ταξινοµήση Γλωσσών Προγρ. Γλώσσα Υψηλού Επιπέδου (high-level language) ανεξάρτητη υπολογιστή συνδυάζει αγγλικές λέξεις και συµβατούς µαθηµατικούς συµβολισµούς (ευκολο-διαβαστη) προσανατολισµένη στην επίλυση συγκεκριµενου τοµεα προβληµάτων, π.χ. FORTRAN µηχανικη και µαθηµατικα, COBOL data processing και business Καµµια HLL γλωσσα καλη για ολες τις εφαρµογες PROGRAM HELLO CHARACTER *10 NAME PRINT *, Enter your name and press return READ *, NAME PRINT *, Hello NAME STOP END epl-031 31 epl-031 32 Μεταγλωτιστής (compiler) Λογισµικό το οποίο µεταφράζει πρόγραµµα υψηλού επιπέδου γλώσσα σε γλώσσα µηχανής Βασιζεται στην συνταξη και σηµασιολογια της γλωσσας Αλλοι µεταφραστες: ιερµηνεας (interpreter) basic και java(πιο αργος) Assembler µετατρεπει συµβολικη γλωσσα σε γλωσσα µηχανης Compilation Πηγαίος κώδικαs Μεταγλωττιστής Κώδικας αντικει- µένου foo.for gff foo.o Source code object code epl-031 33 epl-031 34 Περίληψη Κοινωνια Πληροφοριας Hardware Εισοδος/Εξοδος Μνηµη Μικροεπεξεργαστης ικτυο/ ιαδικτυο Software Λειτουργικο Συστηµα Γλωσσες Προγραµµατισµου Μεταγλωτιστης epl-031 35 Εποµενο Αντικειµενο Πως γραφουµε προγραµµατα Εισαγωγη στην FORTRAN epl-031 36