ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τµήµα Πληροφορικής ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ

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

Download "ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τµήµα Πληροφορικής ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ"

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τµήµα Πληροφορικής ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ Άσκηση 5: Οµαδική Ανάπτυξη Σπονδυλωτού Προγράµµατος για Χαµηλού Επιπέδου Αλληλεπίδραση µε Εξοµοιωτή Παιχνιδιών Atari Διδάσκων: Δηµήτρης Ζεϊναλιπούρ Υπεύθυνοι Άσκησης: Παύλος Αντωνίου και Πύρρος Μπράτσκας Ι. Στόχος Άσκησης Ηµεροµηνία Ανάθεσης: Δευτέρα, 13/4/2015 Ηµεροµηνία Παράδοσης: Πέµπτη, 30/4/2015 (17 µέρες) (να υποβληθεί σε ένα zip στο Moodle και εκτυπωµένος στο εργαστήριο) Στόχος αυτής της άσκησης είναι να σας επιτρέψει να βάλετε µαζί όλες τις γνώσεις και αρχές που αποκτήσατε µέσω του ΕΠΛ132. Το ειδικότερο θέµα της εργασίας αφορά τη συγγραφή ενός σπονδυλωτού (modular) προγράµµατος αλληλεπίδρασης µε παιχνίδια της δηµοφιλούς κονσόλας παιχνιδιών Atari. Μέσω της εργασίας αυτής θα ακολουθήσετε τα βήµατα του Κύπριου ερευνητή τεχνητής νοηµοσύνης και ιδρυτή της εταιρείας DeepMind, Ντέµη Χασάπη, η οποία εξαγοράστηκε προσφάτως (Ιανουάριος 2014) από την Google για περίπου 625 εκατοµµύρια δολάρια. Η εταιρεία DeepMind ανέπτυξε ένα πρόγραµµα το οποίο εµπνέεται από τον τρόπο που λειτουργεί ο ανθρώπινος εγκέφαλος, και το οποίο µαθαίνει από µόνο του (self-learning) πως να παίζει τα κλασικά παιχνίδια Atari. Η µόνη πληροφορία που δίνεται στο πρόγραµµα είναι τα εικονοστοιχεία (pixels) που στέλνει η κονσόλα παιχνιδιού Atari στην οθόνη της τηλεόρασης και ο στόχος είναι το πρόγραµµα να παίζει το παιχνίδι, χωρίς προηγούµενη γνώση, για να πετύχει όσο το δυνατό µεγαλύτερο σκορ. Στην εργασία αυτή θα αναπτύξετε ένα απλό πρόγραµµα που λαµβάνει την ίδια είσοδο όπως και το σύστηµα της DeepMind και το οποίο αλληλεπιδρά µε το παιχνίδι µε κάποιο τυχαίο τρόπο. Η υλοποίηση θα γίνει σε οµάδες των τριών (3) ατόµων, όπως αυτές έχουν ανακοινωθεί µέσω του Moodle. Για την υλοποίηση της άσκησης θα χρειαστεί να χρησιµοποιήσετε τα ακόλουθα στοιχεία: 1. Βιβλιοθήκη πράκτορα επεξεργασίας και αλληλεπίδρασης παιχνιδιών Atari: Καλείστε να υλοποιήσετε κάθε µια από τις λειτουργίες του πράκτορα, οι οποίες περιγράφονται στην πορεία της εκφώνησης, ως ένα ξεχωριστό module (.c) µιας ενιαίας βιβλιοθήκης (δείτε Εικόνα 2). Νοείται ότι η βιβλιοθήκη σας δύναται να έχει όσα άλλα modules (ζεύγη.c/.h) κρίνεται σκόπιµα. Εφαρµόστε το κατάλληλο επίπεδο απόκρυψης πληροφοριών µε χρήση PRIVATE ή PUBLIC. 2. Πελάτης: Καλείστε να υλοποιήσετε ένα πελάτη ο οποίος θα συνδέεται στατικά µε τον πράκτορα για να παρουσιάζει τις λειτουργίες του. Ο πελάτης θα ήταν καλό να αποτελείται από ένα µονάχα.c αρχείο (όλες οι υπόλοιπες λειτουργίες να ενσωµατωθούν στον πράκτορα). 3. Ανάπτυξη σε Οµάδες: Για την ανάπτυξη της οµαδικής αυτής εργασίας πρέπει να χρησιµοποιηθεί το σύστηµα εκδόσεων Subversion (SVN) του τµήµατος µας. Οι οµάδες 1/13

2 έχουν ανακοινωθεί ήδη στο Moodle και τα µέλη των οµάδων αναµένεται να συµβάλουν ισοµερώς σε χρόνο και ουσιαστική δουλειά. Συµβουλευτείτε τη διάλεξη 18 για σύνδεση και χρήση του SVN (αυτό µπορεί να γίνει σε κατοπινό στάδιο όταν θα έχει καλυφθεί στο µάθηµα). Κάθε άτοµο µέλος οµάδας πρέπει να υποβάλλει τις αλλαγές του στο SVN σε τακτή βάση (π.χ., ηµερησίως ή πολλαπλές φορές τη εβδοµάδα) 4. Σχεδίαση Προγράµµατος: Προτρέπεται όπως η βιβλιοθήκη σας σχεδιαστεί από πάνω προς τα κάτω, αποφασίζοντας δηλαδή τα αρχεία κεφαλίδας συλλογικά και υλοποιώντας κάθε συνάρτηση ατοµικά. Η ορθότητα κάθε συνάρτησης της βιβλιοθήκης (το οποίο ονοµάζεται module στη περίπτωση µας), θα πρέπει να ελεχθεί και από τα δυο µέλη της οµάδας αλλά θα πρέπει να υλοποιείται από ένα µόνο µέλος της οµάδας (του οποίου το όνοµα θα τοποθετηθεί και ως Author στο εν λόγω αρχείο). 5. Έλεγχος Προγράµµατος: Το τελικό λογισµικό σας θα πρέπει να ελεγχθεί στατικά (κατά τη µεταγλώττιση και µε τον debugger) αλλά και δυναµικά (µε valgrind για διαρροή µνήµης, profiler gprof για εύρεση συναρτήσεων που πρέπει να βελτιστοποιηθούν). Νοείται ότι κάθε module του προγράµµατος σας θα συνοδεύεται από τους σχετικούς οδηγούς χρήσης για να γίνει το σχετικό white-box testing. 6. GPL: Για σκοπούς εξοικείωσης σας µε την ορολογία του λογισµικού ανοικτού πηγαίου κώδικα, η βιβλιοθήκη σας θα πρέπει να κάνει χρήση του GPL προοιµίου (preamble) σε κάθε αρχείο πηγαίου κώδικα της βιβλιοθήκης. Ο πελάτης θα πρέπει να ανταποκρίνεται µε το προοίµιο εάν δε δοθούν ορίσµατα (βλέπε διάλεξη 18). 7. Αξιολόγηση: Η αξιολόγηση της άσκησης θα στηριχτεί στα αναλυτικά κριτήρια που θα παρουσιαστούν στο τέλος αυτής της εκφώνησης. Μεταξύ άλλων, βασικός στόχος της άσκησης είναι να αξιολογηθεί η δοµή και οργάνωση του λογισµικού σας αλλά και επίδοση του συνολικού προγράµµατος (π.χ., πόση ώρα θα χρειαστεί να διεκπεραιώσει κάποιες λειτουργίες; Πόσο αποδοτικά χρησιµοποιείται η µνήµη; κτλ.) 8. Τελικός Διαγωνισµός: Η τελική αξιολόγηση της άσκησης, στο τελευταίο εργαστήριο, δύναται να αναδείξει ένα µικρό αριθµό οµάδων οι οποίες οµάδες θα κληθούν να παρουσιάσουν το λογισµικό τους σε ένα τελικό διαγωνισµό (ηµεροµηνίες του τελικού διαγωνισµού θα ακολουθήσουν στη συνέχεια). Οι λειτουργίες της βιβλιοθήκης σας και το αναµενόµενο αποτέλεσµα του πελάτη περιγράφονται αναλυτικότερα στην συνέχεια, αφού επεξηγηθεί πρώτα το πρόβληµα. ΙΙ. Περιγραφή Μιας και η εργασία αυτή σχετίζεται µε τα παιχνίδια τύπου Atari, επιβάλλεται µια µικρή εισαγωγή σχετικά µε την κονσόλα παιχνιδιών Atari. Η εταιρεία Atari ιδρύθηκε το 1976 και εισήγαγε το παιχνίδι Pong, ένα παιχνίδι σταθµό στο χώρο της ψηφιακής ψυχαγωγίας. Το 1977, η Atari κυκλοφόρησε την κονσόλα της µε όνοµα Video Computer System που αργότερα (αρχές της δεκαετίας του 1980) µετονοµάστηκε σε Atari 2600 (βλέπε Εικόνα 1). Εικόνα 1: Κονσόλα Παιχνιδιών Atari 2600 Τα παιχνίδια Atari έγιναν πολύ δηµοφιλή ανάµεσα στο κοινό, οπότε µετά την εµφάνιση των προσωπικών υπολογιστών δηµιουργήθηκε η ανάγκη να µεταφερθούν στο νέο αυτό περιβάλλον. Την ανάγκη αυτή καλύπτουν οι εξοµοιωτές παιχνιδιών Atari, που είναι προγράµµατα που µιµούνται τη λειτουργία της κονσόλας παιχνιδιών Atari. Οι εξοµοιωτές αυτοί τροφοδοτούνται µε αρχεία ROM (µε κατάληξη.bin). Μια εικόνα ROM (ROM image), ή αρχείο ROM, είναι ένα αρχείο 2/13

3 που περιέχει ένα αντίγραφο των δεδοµένων µιας κασέτας ενός βιντεοπαιχνιδιού. Ένας από τους πιο δηµοφιλής εξοµοιωτές παιχνιδιών Atari 2600 είναι ο Stella (http://stella.sourceforge.net/). Στην άσκηση αυτή θα χρησιµοποιήσουµε το Arcade Learning Environment (ALE) που είναι ένα περιβάλλον που υλοποιήθηκε στη βάση του εξοµοιωτή Stella για να επιτρέπει την αλληλεπίδραση προγραµµάτων-πρακτόρων µε παιχνίδια τύπου Atari Πριν προχωρήσετε περαιτέρω, παρακαλώ µελετήστε και εγκαταστήστε το περιβάλλον ALE χρησιµοποιώντας τις οδηγίες από τον αντίστοιχο οδηγό (ALE-manual.pdf στο as5- supplementary.zip), που αναρτήθηκαν µαζί µε την εκφώνηση. Στο πιο κάτω διάγραµµα παρουσιάζεται η αρχιτεκτονική ολόκληρου του συστήµατος της εργασίας (ΑLE, βιβλιοθήκη προγράµµατος, πρόγραµµά σας ). Όπως µπορείτε να δείτε, θα χρησιµοποιήσουµε τον εξοµοιωτή παιχνιδιών ALE ο οποίος θα λαµβάνει σαν είσοδο αρχεία παιχνιδιών Atari (rom files) και θα «τρέχει» το παιχνίδι παράγοντας πλαίσια (frames). Τα πλαίσια αυτά είναι στην ουσία οι διαδοχικές εικόνες (από pixels) που απεικονίζουν την τρέχουσα κατάσταση του παιχνιδιού. Τα πλαίσια αυτά θα λαµβάνονται από το δικό σας πράκτορα, θα τυγχάνουν επεξεργασίας και θα αποθηκεύονται σαν εικόνες σε κάποιο κατάλογο του δίσκου του υπολογιστή για να µπορούν να απεικονιστούν από κάποιο πρόγραµµα προβολής εικόνων. Ταυτόχρονα, το σύστηµά σας θα δίνει τη δυνατότητα αλληλεπίδρασης µε τον εξοµοιωτή στις περιπτώσεις που (α) κάποιος χρήστης να παίζει το παιχνίδι ή (β) να επιτρέπει στον πράκτορα να παίζει από µόνο του µε τυχαίο τρόπο. ALE Game Emulator Βιβλιοθήκη πράκτορα επεξεργασίας (Εξοµοιωτής παιχνιδιών ALE) και αλληλεπίδρασης παιχνιδιών Atari Αρχικοποίηση σύνδεσης (Φάση χειραψίας) Frames (πλαίσια) Connector Frame Decoder Module Motion Commands (Εντολές Κίνησης) π.χ. up, down, left, right Action Module BMP Engine Module Image file on disk Atari ROMs (games) Πελάτης User (χρήστης) gthumb image viewer (πρόγραµµα προβολής εικόνων) Εικόνα 2: Αρχιτεκτονική Λογισµικού Άσκησης 5 3/13

4 ΙΙΙ. Υποσυστήµατα Πράκτορα Πιο κάτω δίνουµε µια πιο αναλυτική περιγραφή των διάφορων υποσυστηµάτων (modules) του πράκτορα που καλείστε να υλοποιήσετε. ΙΙΙ-A. Υποσύστηµα Διασύνδεσης (Connector Module) Το υποσύστηµα αυτό αναλαµβάνει τη διασύνδεση του πράκτορα µε το πρόγραµµα ALE διεκπεραιώνοντας τη φάση της χειραψίας (handshaking) που περιγράφεται στον οδηγό εγκατάστασης και χρήσης του ALE και παρουσιάζεται οπτικά στην πιο κάτω εικόνα. www-hhh\n s,r,k,r\n Agent Εικόνα 3: Φάση χειραψίας µεταξύ προγράµµατος ALE και πράκτορα. ΙΙΙ-B. Υποσύστηµα Αποκωδικοποιητή Πλαισίων (Frame Decoder Module) Το δεύτερο υποσύστηµα του πράκτορά σας είναι ο αποκωδικοποιητής πλαισίων, ο οποίος ενεργοποιείται µετά τη φάση χειραψίας. Το υποσύστηµα αυτό θα λαµβάνει τη συµβολοσειρά: <screen_string>\n που στέλνει το πρόγραµµα ALE µετά τη φάση της χειραψίας. Όπως περιγράφηκε στον οδηγό εγκατάστασης και χρήσης του περιβάλλοντος ALE, ένα υποσύνολο της συµβολοσειράς screen string του πρώτου πλαισίου που στέλνει το πρόγραµµα ALE για το παιχνίδι boxing είναι το πιο κάτω: 0008D D D D D D6280C04D63C : όπου κάθε ζεύγος δεκαεξαδικών χαρακτήρων [00-FF] αντιστοιχεί σε ένα ακέραιο αριθµό [0-255]. Η πιο πάνω συµβολοσειρά είναι κωδικοποιηµένη µε την τεχνική µήκους διαδροµής (run-length encoding). Για να εξηγήσουµε τι σηµαίνει αυτό, σκεφτείτε ότι χωρίς την χρήση οποιασδήποτε κωδικοποίησης, το screen_string έπρεπε να αποτελείται από ακολουθίες της µορφής: color color color color color color color : όπου color είναι το χρώµα ενός pixel. Αν κάθε pixel έχει µέγεθος 1 byte, τότε το κάθε χρώµα θα λάµβανε τιµές από έως FF 16 (δηλ. από 0 10 έως στο δεκαδικό σύστηµα). Με τη χρήση κωδικοποίησης run-length, το πρόγραµµα ALE δεν στέλνει pixels της µορφής ΧΧ (2 δεκαεξαδικοί χαρακτήρες) αλλά ζεύγη της µορφής: (color, length) (color, length) (color, length) (color, length) : Αν κάνουµε αυτό το διαχωρισµό σε ζεύγη στο πιο πάνω παράδειγµα έχουµε: (00,08)(D6,98)(00,08)(D6,98)(00,08)(D6,98)(00,08)(D6,98)(00,08)(D6,98) (00,08)(D6,28)(0C,04)(D6,3C) : Το πρώτο ζεύγος υποδηλώνει ότι τα πρώτα (=08 10 ) pixels έχουν χρώµα (=00 10 ). Αυτό που επιτυγχάνεται µε την κωδικοποίηση κατά run length είναι η συµπίεση των δεδοµένων που 4/13

5 αποστέλλονται. Δηλαδή, αντί το πρόγραµµα ALE να στείλει 8 φορές το pixel µε χρώµα 00 (ακολουθία ) στέλνει Το δεύτερο ζεύγος υποδηλώνει ότι τα επόµενα (= ) pixels έχουν χρώµα D6 16 (= ). Τα συµπιεσµένα pixel αποστέλλονται γραµµή προς γραµµή. Για να µπορέσει κάποιος να αποσυµπιέσει τα pixels µιας εικόνας κωδικοποιηµένης κατά run-length πρέπει να αποκωδικοποιήσει κάθε τετράδα δεκαεξαδικών χαρακτήρων όπως κάναµε πιο πάνω. Μετά την αποσυµπίεση, θα έχουµε 2 x www x hhh δεκαεξαδικούς χαρακτήρες. Το επόµενο βήµα είναι να µετατρέψουµε κάθε ζεύγος δεκαεξαδικών χαρακτήρων σε ένα ακέραιο αριθµό. Μετά το βήµα αυτό θα πρέπει να προκύψουν www x hhh ακέραιοι αριθµοί που ο καθένας αντιστοιχεί σε ένα χρώµα ενός pixel. Παράδειγµα Έστω το screen string FF FF 04 κωδικοποιηµένο κατά run-length. Αν το αποσυµπιέσουµε θα λάβουµε τη συµβολοσειρά FF FF FF FF FF FF FF Αν κάνουµε τη µετατροπή σε ακέραιους αριθµούς θα έχουµε Έστω ότι το χρώµα 0 είναι το µαύρο και το χρώµα 255 είναι το κόκκινο τότε το αρχικό screen string απεικονίζει ένα πλαίσιο 12 pixels, µε πλάτος 4 pixels (www=004) και ύψος 3 pixels (hhh=003). Το πλαίσιο αυτό είναι το πιο κάτω: www hhh Εικόνα 4: Παράδειγµα πλαισίου. Το τελευταίο βήµα για να λάβουµε την πιο πάνω εικόνα ήταν η αντιστοίχιση των ακέραιων αριθµών σε χρώµατα. Στην άσκηση αυτή θα υποθέσουµε ότι το κάθε χρώµα έχει 3 χρωµατικές συνιστώσες: RGB (R: Red, G: Green, B: Blue). Άρα το τελευταίο βήµα του παρόντος υποσυστήµατος είναι η µετατροπή του κάθε ακέραιου αριθµού στις 3 βασικές χρωµατικές συνιστώσες του έτσι να µπορούµε στη συνέχεια, όταν χρειαστεί, να αποθηκεύουµε το πλαίσιο σαν εικόνα στο δίσκο. Για το σηµείο αυτό ακολουθεί περαιτέρω συζήτηση. Η αποθήκευση του πλαισίου σαν εικόνα στο δίσκο είναι εργασία την οποία θα διεκπεραιώνει το υποσύστηµα Πλαισίωσης Εικόνων BMP. Γνωρίζουµε ότι κάθε εικόνα αποτελείται από ένα αριθµό pixels. Θεωρήστε για παράδειγµα τον 3x4 πίνακα από pixels της Εικόνα 5. Αν δώσουµε κάποιο χρώµα σε κάθε τετράγωνο τότε θα 5/13

6 δηµιουργηθεί κάποια εικόνα. Αν είχαµε ένα µεγαλύτερο πίνακα και µια µεγάλη παλέτα (συλλογή) χρωµάτων, τότε θα µπορούσαµε να φτιάξουµε µια εικόνα όπως αυτή που παρουσιάζεται στην Εικόνα Εικόνα 5: 3x4.bmp 6/13 Εικόνα 6 Βασικό χαρακτηριστικό µιας εικόνας είναι το βάθος χρώµατος (color depth). Με τον όρο αυτό αναφερόµαστε στο πλήθος των διαφορετικών χρωµάτων από τα οποία µπορούν να επιλεγούν τα χρώµατα ενός pixel. Οι τυπικές περιπτώσεις είναι οι εξής: Βάθος χρώµατος Πλήθος χρωµάτων 1 bit 2 διαθέσιµα χρώµατα (2 1 ) 4 bits 16 διαθέσιµα χρώµατα (2 4 ) 8 bits ή 1 byte 256 διαθέσιµα χρώµατα (2 8 ) 16 bits ή 2 bytes χρώµατα (2 16 ) 24 bits ή 3 bytes χρώµατα (2 24 ) 32 bits ή 4 bytes χρώµατα (2 32 ) Στην παρούσα εργασία θα ασχοληθούµε µόνο µε εικόνες βάθους χρώµατος 24 bits στις οποίες η κατανοµή χρωµάτων για το κάθε pixel είναι πάντα η ίδια για το R, G, B, δηλαδή 1 byte για το κάθε χρώµα, οπότε 3 bytes συνολικά. Όπως είπαµε προηγουµένως, ο αποκωδικοποιητής πλαισίων πρέπει να µετατρέψει τον κάθε ακέραιο αριθµό στις 3 χρωµατικές συνιστώσες του. Οπότε µε άλλα λόγια, αν θέλουµε να δηµιουργήσουµε εικόνες µε βάθος χρώµατος 24 bits πρέπει ο κάθε ακέραιος αριθµός να αντικατασταθεί από 3 bytes. Οπότε η εικόνα θα αποθηκευτεί σε ένα πίνακα 2 διαστάσεων (unsigned char image[ ][ ]) µε πλάτος 3 x www και ύψος hhh. Για τη λειτουργία αυτή θα χρειαζόµαστε µια παλέτα (palette) χρωµάτων που αντιστοιχεί κάθε ακέραιο σε RGB χρωµατικές συνιστώσες. Η κονσόλα Atari 2600 χρησιµοποιεί 3 διαφορετικές παλέτες που εξαρτώνται τη µορφή του αναλογικού συστήµατος τηλεόρασης: (i) NTSC (Αµερική/Καναδά), (ii) SECAM (Ανατολική Ευρώπή/Γαλλία/Ελλάδα) και (iii) PAL (Δυτική Ευρώπη/Κύπρος/Αυστραλία). Κατά συνέπεια, υπάρχουν 3 αντίστοιχες διαφορετικές χρωµατικές παλέτες για το Atari Στην παρούσα άσκηση θα χρησιµοποιήσουµε µόνο τις παλέτες NTSC και SECAM. Για κάθε παλέτα δίνεται ένα αρχείο που περιέχει ένα πίνακα 256 θέσεων (δείτε ntscpalette.h και secampalette.h στον κατάλογο /palettes µέσα στο αρχείο as5-supplementary.zip). Σε κάθε θέση του πίνακα βρίσκεται ένα χρώµα. Κάθε χρώµα περιλαµβάνει τις 3 χρωµατικές συνιστώσες (R, G, B). Για παράδειγµα:

7 ntsccolorpalette[254] = 0xfce070 όπου το fc είναι η συνιστώσα του κόκκινου χρώµατος (R), e0 είναι η συνιστώσα του πράσινου χρώµατος (G) και 70 είναι η συνιστώσα του µπλε χρώµατος (B). Παράδειγµα Αν η αποσυµπιεσµένη ακολουθία ακεραίων του screen string είναι η πιο κάτω: τότε ο πρώτος ακέραιος (δηλ. το 254) αντιστοιχεί στο χρώµα που βρίσκεται στη θέση 254 της παλέτας (έστω NTSC palette) το οποίο είναι το 0xfce070. Οπότε στις πρώτες 3 θέσεις του πίνακα δύο διαστάσεων image (που είδαµε προηγουµένως) θα µπουν τα εξής: image[0][0] = 0xfc image[0][1] = 0xe0 image[0][2] = 0x70 Δείτε στην πιο κάτω εικόνα πως φαίνεται το παιχνίδι boxing σε καθεµιά από τις 2 αυτές παλέτες. Boxing µε χρήση της παλέτας NTSC Boxing µε χρήση της παλέτας SECAM Εικόνα 7: Το παιχνίδι Boxing µε χρήση διαφορετικών παλετών. Για να υπάρχει συµβατότητα µε το πρότυπο BMP, θα πρέπει τα pixel της εικόνας να αποθηκεύονται γραµµή προς γραµµή ξεκινώντας από τη τελευταία και πηγαίνοντας προς τα πάνω (βλέπε Εικόνα 3 και παράγραφο «Δοµή του DATA σε Αρχεία ΒΜP» που δίνεται στον οδηγό του προτύπου BMP (BMP-manual.pdf). Ο πίνακας που περιέχει τα pixels της εικόνας θα περάσει στη συνέχεια σαν είσοδος στο υποσύστηµα πλαισίωσης εικόνων για να αποθηκευτεί σε αρχείο µέσα στο δίσκο. Λειτουργίες Αποκωδικοποιητή Πλαισίων Έστω ότι agent.a είναι ο πράκτορας που θα δηµιουργήσετε (που µέχρι στιγµής θα περιέχει τα υποσυστήµατα διασύνδεσης και αποκωδικοποιητή πλαισίων) και client.c ο πελάτης, τότε client είναι το εκτελέσιµο αρχείο που παράγεται συνδέοντας το agent.a µε το client.c κατά την µεταγλώττιση (υποστηριζόµενα αρχεία ROM υπάρχουν στον κατάλογο /rom µέσα στο αρχείο as5-supplementary.zip). Πιο κάτω περιγράφεται η αναµενόµενη λειτουργία του πράκτορα κάνοντας αναφορά στις λειτουργίες του µέσω υποδειγµατικών εκτελέσεων του πελάτη. 7/13

8 H γενική µορφή εκτέλεσης του πελάτη είναι η ακόλουθη: $./client <-module> <operation> όπου το module σχετίζεται µε ένα συγκεκριµένο υποσύστηµα του πράκτορα και το operation είναι µια λειτουργία του υποσυστήµατος. Για το παρόν υποσύστηµα, θα χρησιµοποιήσουµε το όρισµα -decoder. Για τις πιο κάτω δύο λειτουργίες, το υποσύστηµα αποκωδικοποίησης πλαισίων να χρησιµοποιεί ΜΟΝΟ το πρώτο πλαίσιο που ανακτά από το πρόγραµµα ALE. Λειτουργία 1: Αποσυµπίεση συµβολοσειράς κωδικοποιηµένης κατά run-length Με τη λειτουργία αυτή, ο πελάτης (αφού καλέσει επιτυχώς το υποσύστηµα διασύνδεσης) θα ζητά από τον αποκωδικοποιητή πλαισίων να αποσυµπιέσει το πρώτο screen string που λαµβάνει από το πρόγραµµα ALE και να γράψει τους δεκαεξαδικούς χαρακτήρες στο αρχείο decoded.txt (οι δεκαεξαδικοί χαρακτήρες να τυπώνονται ανά ζεύγος µε κενό ενδιάµεσα). Παράδειγµα εκτέλεσης: $./client -decoder decode decoded.txt Για να ελέγξετε τα αποτελέσµατα της λειτουργίας αυτής, σας δίνεται το αρχείο decoded.txt (που αντιστοιχεί στο πρώτο πλαίσιο του παιχνιδιού boxing) στον κατάλογο /test µέσα στο αρχείο as5-supplementary.zip. Λειτουργία 2: Αντιστοίχιση σε παλέτες Με τη λειτουργία αυτή, ο πελάτης (αφού αποσυµπιέσει το πρώτο screen string όπως έκανε και στη λειτουργία 1) θα κάνει την µετατροπή των δεκαεξαδικών χαρακτήρων σε ακέραιους αριθµούς και στη συνέχεια την αντιστοίχιση σε χρώµατα µε βάση τη ζητούµενη παλέτα. Το αποτέλεσµα (ο πίνακας 2 διαστάσεων µε πλάτος 3 x www και ύψος hhh) να γράφει σε αντίστοιχο αρχείο (ένα ακέραιο για κάθε θέση του πίνακα). Παραδείγµατα εκτέλεσης: $./client -decoder ntsc ntsc.txt $./client -decoder secam secam.txt Για να ελέγξετε τα αποτελέσµατα της λειτουργίας αυτής, σας δίνονται τα αρχεία ntsc.txt και secam.txt στον κατάλογο /test µέσα στο αρχείο as5-supplementary.zip. 8/13

9 ΙΙΙ-Γ. Υποσύστηµα Πλαισίωσης Εικόνων BMP (BMP Engine Module) Πριν προχωρήσετε περαιτέρω, σας συνιστούµε να µελετήσετε το πρότυπο BMP από τον αντίστοιχο οδηγό (BMP-manual.pdf στο as5-supplementary.zip). Λειτουργίες Πλαισίωσης Εικόνων BMP Για το παρόν υποσύστηµα, θα χρησιµοποιήσουµε το όρισµα -bmp. Για τις πιο κάτω τέσσερις λειτουργίες, να χρησιµοποιείται ΜΟΝΟ το πρώτο πλαίσιο που ανακτά από το πρόγραµµα ALE. Λειτουργία 3: Μετατροπή πλαισίου σε BMP Η λειτουργία αυτή βασίζεται στις συναρτήσεις που υλοποιήθηκαν για τις Λειτουργίες 1 και 2. Με άλλα λόγια, ο πελάτης θα καλέσει αρχικά τα υποσυστήµατα διασύνδεσης και κωδικοποίησης για σύνδεση µε το πρόγραµµα ALE, ανάκτηση screen string πρώτου πλαισίου και αποκωδικοποίηση (αποσυµπίεση, αντιστοίχιση). Στη συνέχεια, ο πελάτης θα ζητά από το υποσύστηµα πλαισίωσης να µετατρέψει το πρώτο screen string που λαµβάνεται από το πρόγραµµα ALE σε εικόνα BMP και να την αποθηκεύσει στο δίσκο µε το όνοµα που θα δίνεται στη γραµµή εντολών (βλέπε Εικόνα 2). Δίνεται σαν όρισµα η παλέτα που θα χρησιµοποιηθεί από το υποσύστηµα αποκωδικοποίησης. Παραδείγµατα εκτέλεσης: $./client -bmp ntsc ntsc2bmp.bmp $./client -bmp secam secam2bmp.bmp Λειτουργία 4: Εκτύπωση κεφαλίδας αρχείου BMP Με τη λειτουργία αυτή, ο πελάτης θα ζητά από το υποσύστηµα πλαισίωσης να εκτυπώσει την κεφαλίδα του αρχείου bmp που δίνεται στη γραµµή εντολών. Παραδείγµατα εκτέλεσης: $./client -bmp list 4x3.bmp BITMAP_FILE_HEADER ================== bftype: BM bfsize: 104 bfreserved1: 0 bfreserved2: 0 bfoffbits: 54 BITMAP_INFO_HEADER ================== bisize: 40 biwidth: 3 biheight: 4 biplanes: 1 bibitcount: 24 bicompression: 0 bisizeimage: 50 bixpelspermeter: 2834 biypelspermeter: 2834 biclrused: 0 biclrimportant: 0 9/13

10 Λειτουργία 5: Φίλτρο Grayscale Η λειτουργία αυτή να υλοποιηθεί µε τη λογική της λειτουργίας 3. Ο πελάτης θα ζητά από το υποσύστηµα πλαισίωσης να µετατρέψει το πρώτο screen string που λαµβάνεται από το πρόγραµµα ALE σε εικόνα BMP στις αποχρώσεις του γκρίζου (grayscale) και να την αποθηκεύσει στο δίσκο µε το όνοµα που θα δίνεται στη γραµµή εντολών Παράδειγµα εκτέλεσης: $./client -bmp grayscale grayframe.bmp Με τη λειτουργία αυτή θα µετατρέπεται το χρώµα του κάθε pixel σε αποχρώσεις του γκρίζου. Για να γίνει αυτό κατορθωτό θα πρέπει κάθε pixel να µετατρέπεται µε την ακόλουθη λογική: Κάθε pixel καταλαµβάνει 3 bytes (εφόσον χρησιµοποιείται 24bit βάθος χρώµατος). Ειδικότερα, τα bytes αυτά κατανέµονται ως ακολούθως: red=1 byte, green=1 byte, blue=1 byte. Τα bytes αυτά πολλαπλασιάζονται χρησιµοποιώντας την NTSC (National Television System Committee) εξίσωση: 0.299*red *green *blue. Το στρογγυλοποιηµένο αποτέλεσµα της NTSC εξίσωσης πάνω σε κάθε επί µέρους 3-byte RGB ακολουθία του αρχείου θα ονοµάζεται απόλυτη φωτεινότητα (luminance). Για παράδειγµα για ένα pixel RGB=(9,90,160), το luminance είναι 0.299* * *160 = 73,761. Συνεπώς, η γκρίζα έκδοση του pixel πρέπει να είναι (74,74,74). Εάν επαναλάβουµε την πιο πάνω εξίσωση για όλα τα pixel µιας εικόνας θα έχουµε το ακόλουθο αποτέλεσµα. grayframe.bmp Λειτουργία 6: Μετασχηµατισµός zoom in Η λειτουργία αυτή να υλοποιηθεί µε τη λογική της λειτουργίας 3. Ο πελάτης θα ζητά από το υποσύστηµα πλαισίωσης εικόνων BMP να µεγεθύνει την εικόνα του πρώτου screen string που λαµβάνεται από το πρόγραµµα ALE στο 200% απλά αντιγράφοντας κάθε pixel σε µια γειτονιά 4 pixel όπως φαίνεται στο πιο κάτω σχήµα. Με άλλα λόγια, η λειτουργία zoom in δηµιουργεί για κάθε ένα pixel της αρχικής εικόνας άλλα 3 pixel ακριβώς τα ίδια. Ιδιαίτερη προσοχή θα πρέπει να επιδείξετε στο γεγονός ότι κάποια πεδία της κεφαλίδας του BMP αλλάζουν τιµή. 10/13

11 Παράδειγµα εκτέλεσης: $./client -bmp zoomin zoominframe.bmp zoominframe.bmp 11/13

12 ΙΙΙ-Δ. Υποσύστηµα Δράσης (Action Module) Η λειτουργία του υποσυστήµατος δράσης σας θα καθοδηγείται από τον χρήστη. Υπάρχουν 2 λειτουργίες που πρέπει να υποστηρίζει το υποσύστηµα αυτό: (α) ο χρήστης να επιλέξει να παίξει το παιχνίδι επιλέγοντας τις κινήσεις που θέλει (χειρονακτική δράση) ή (β) ο χρήστης να εξουσιοδοτήσει το σύστηµα δράσης να παίξει το παιχνίδι µε χρήση τυχαίων κινήσεων (αυτόµατη τυχαία δράση). Λειτουργίες Υποσυστήµατος Δράσης Για το παρόν υποσύστηµα, θα χρησιµοποιήσουµε το όρισµα -action. Λειτουργία 7: Χειρονακτική Δράση Παράδειγµα εκτέλεσης: $./client -action manually frame.bmp Όταν δοθεί το όρισµα manually ο πελάτης θα εκτυπώνει στην οθόνη αρχικά µια λίστα µε τις δυνατές ενέργειες του παίχτη (δείτε Πίνακα 1 στο αρχείο ALE-manual.pdf) µαζί µε τον αντίστοιχο χαρακτήρα της κάθε ενέργειας (µπορείτε να χρησιµοποιήσετε δική σας αντιστοίχιση ενεργειών σε πλήκτρα) και ο χρήστης θα δίνει το χαρακτήρα της ενέργειας που επιθυµεί. Ο πελάτης θα µεταβιβάζει την επιλογή του χρήστη στο υποσύστηµα δράσης για να τον προωθήσει στο πρόγραµµα ALE. Το πρόγραµµα ALE θα στέλνει το screen string, το υποσύστηµα αποκωδικοποιητή πλαισίων θα το αποκωδικοποιεί και το υποσύστηµα πλαισίωσης θα δηµιουργεί την εικόνα BMP και θα την γράφει στο δίσκο. Την εικόνα αυτή µπορείτε να την ανοίξετε µε το πρόγραµµα gthumb image viewer. Κάθε φορά που θα στέλνει νέα ενέργεια ο χρήστης και θα αλλάζει το πλαίσιο του παιχνιδιού που στέλνει το πρόγραµµα ALE θα γίνεται αυτόµατα ενηµέρωση της εικόνας πάνω στον gthumb image viewer (το οποίο στη καλύτερη περίπτωση µπορεί να δείχνει το νέο πλαίσιο 3-4 δευτερόλεπτα). Λειτουργία 8: Αυτόµατη (Τυχαία) Δράση Παράδειγµα εκτέλεσης: $./client -action random frame.bmp Όταν δοθεί το όρισµα random ο πελάτης θα εξουσιοδοτεί το υποσύστηµα δράσης να παίξει το παιχνίδι µε χρήση τυχαίων κινήσεων. Ο χρήστης µπορεί να παρακολουθεί την εξέλιξη του παιχνιδιού πάνω στον gthumb image viewer. IV. Ενδεχόµενα Λάθη Το πρόγραµµα ALE δεν είναι σε λειτουργία όταν ο πράκτορας εκτελεί λειτουργία που απαιτεί την αλληλεπίδραση µε το πρόγραµµα ALE: Πρέπει να εκτυπώνεται το GPL προοίµιο και στη συνέχεια να δίνεται το σχετικό µήνυµα λάθους. Δεν ορίζεται module ή δεν ορίζεται operation ή δεν ορίζεται όνοµα αρχείου στην γραµµή εντολών: Πρέπει να εκτυπώνεται το GPL προοίµιο και στη συνέχεια να δίνεται το σχετικό µήνυµα λάθους. V. Εξέταση Εργασίας και Τελικός Διαγωνισµός Κατά την διάρκεια του τελευταίου εργαστηρίου θα γίνει η εξέταση της εργασίας κατά το οποίο θα πρέπει να γίνει η επίδειξη της σχεδίασης και υλοποίησης της βιβλιοθήκης και του πελάτη σας απ όλα τα µέλη της οµάδας. Τυχούσα παράληψη παρουσίασης της εργασίας ενδέχεται να συνεπάγεται τον µηδενισµό της εργασίας. Στοιχεία τα οποία ληφθούν υπόψη στην αξιολόγηση της εργασίας σας περιλαµβάνουν: ορθότητα λειτουργίας, στοιχεία επίδοσης: π.χ., 12/13

13 ελαχιστοποίηση του χρόνου απόκρισης σε αιτήσεις, το οποίο ορίζεται ως το διάστηµα µεταξύ της χρονικής στιγµής που γίνεται η αίτηση και της στιγµής που διεκπεραιώνεται µια λειτουργία, σχεδίαση µονάδων λογισµικού και της βιβλιοθήκης ευρύτερα. Στοιχεία από Προηγούµενες Εργασίες: 1. Ανάπτυξη του προγράµµατος σε eclipse CDT IDE. Το πρόγραµµα πρέπει να µεταγλωττίζεται τόσο µέσω του eclipse όσο και µέσω της γραµµής εντολής µε το makefile. Κάθε αντικείµενο (module) πρέπει να συµπεριλαµβάνει τους σχετικό οδηγό χρήσης (driver functions, δείτε διάλεξη 12). Οι οµάδες µπορεί να χρησιµοποιήσουν τους οδηγούς χρήσης όπως επεξηγήθηκε στο µάθηµα. 2. Σχόλια και οδηγό σχολίων µε χρήση του doxygen αλλά και διάγραµµα εξαρτήσεων αντικειµένων µε χρήση του graphviz. Για χρήση των διαγραµµάτων στο eclipse του Η/Υ σας µπορείτε να χρησιµοποιήσετε το Eclox (βλέπε διάλεξη 16) Κριτήρια αξιολόγησης: Υλοποίηση Πελάτη 10 Λειτουργία 1 Run-length αποσυµπίεση 10 Λειτουργία 2 Αντιστοίχιση πλαισίων σε παλέτες 10 Λειτουργία 3 Μετατροπή Πλαισίων σε BMP 10 Λειτουργία 4 Εκτύπωση κεφαλίδας BMP 10 Λειτουργία 5 Φίλτρο Grayscale 5 Λειτουργία 6 Μετασχηµατισµός Zoom In 10 Λειτουργία 7 Χειρονακτική Καθοδήγηση Πράκτορα 10 Λειτουργία 8 Τυχαία Καθοδήγηση Πράκτορα 5 Γενική εικόνα (στοιχισµένος και ευανάγνωστος κώδικας, 10 εύστοχα ονόµατα µεταβλητών, σταθερών και συναρτήσεων, σχολιασµός) GPL Προοίµια, Σχεδίαση Προγράµµατος, Χρήση SVN, gprof 10 report, valgrind report ΣΥΝΟΛΟ (Προαιρετικό) Επιπλέον λειτουργίες στο 7 & 8 που τυγχάνουν να έχουν ενδιαφέρον, πολυπλοκότητα και σκοπό (π.χ., λειτουργία αυτόµατης µη-τυχαίας δράσης στη βάση κάποιας στρατηγικής µε σχετική επεξήγηση, κτλ.) Καλή Επιτυχία! 13/13

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ,

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 4: ΣΥΣΤΗΜΑΤΑ ΠΟΛΥΜΕΣΩΝ Ακαδηµαϊκό Έτος 004 005, Χειµερινό Εξάµηνο Καθ.: Νίκος Τσαπατσούλης ΤΕΛΙΚΗ ΕΞΕΤΑΣΗ Η εξέταση αποτελείται από δύο µέρη. Το πρώτο περιλαµβάνει

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΑΣΚΗΣΗ 5 Ανάπτυξη Προγράμματος Συμπίεσης/Αποσυμπίεσης Αρχείων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΑΣΚΗΣΗ 5 Ανάπτυξη Προγράμματος Συμπίεσης/Αποσυμπίεσης Αρχείων ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 035: Δομές Δεδομένων και Αλγόριθμοι για Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών Χειμερινό Εξάμηνο 2012 ΑΣΚΗΣΗ 5 Ανάπτυξη Προγράμματος Συμπίεσης/Αποσυμπίεσης

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΗ ΑΣΚΗΣΗ 2 ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 231: Δομές Δεδομένων και Αλγόριθμοι Εαρινό Εξάμηνο 2013 ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΗ ΑΣΚΗΣΗ 2 Διδάσκων Καθηγητής: Παναγιώτης Ανδρέου Ημερομηνία Υποβολής: 05/03/2013 Ημερομηνία

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

ΕΠΛ132 Άσκηση 3 - Αρχές Προγραμματισμού ΙΙ Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ

ΕΠΛ132 Άσκηση 3 - Αρχές Προγραμματισμού ΙΙ Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 132 Αρχές Προγραμματισμού ΙΙ ΑΣΚΗΣΗ 3: Επεξεργασία Χημικών Τύπων με Δυναμικές Δομές Δεδομένων Διδάσκων: Δημήτρης Ζεϊναλιπούρ Υπεύθυνος Άσκησης: Πύρρος Μπράτσκας

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 132 Αρχές Προγραμματισμού ΙΙ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 132 Αρχές Προγραμματισμού ΙΙ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 132 Αρχές Προγραμματισμού ΙΙ Άσκηση 5: Ομαδική Συγγραφή Βιβλιοθήκης (.a) και Πελάτη για Στεγανογραφία σε Αρχεία Εικόνων Διδάσκων: Δημήτρης Ζεϊναλιπούρ Υπεύθυνος

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

ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΩΝ (E-CAD) ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ Χ. Βέργος Καθηγητής

ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΩΝ (E-CAD) ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ Χ. Βέργος Καθηγητής ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΩΝ (E-CAD) ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2013 2014 Χ. Βέργος Καθηγητής ΕΡΓΑΣΙΑ ΕΞΑΜΗΝΟΥ Σκοπός της φετινής εργασίας εξαμήνου είναι η σχεδίαση ενός Συστήματος Απεικόνισης Χαρακτήρων

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

Βίντεο και κινούµενα σχέδια

Βίντεο και κινούµενα σχέδια Βίντεο και κινούµενα σχέδια Περιγραφή του βίντεο Ανάλυση του βίντεο Κωδικοποίηση των χρωµάτων Μετάδοση τηλεοπτικού σήµατος Συµβατικά τηλεοπτικά συστήµατα Τεχνολογία Πολυµέσων 06-1 Περιγραφή του βίντεο

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ132 Άσκηση 4 - Αρχές Προγραμματισμού ΙΙ Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου Ι. Στόχοι ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 132 Αρχές Προγραμματισμού ΙΙ Άσκηση 4 Αυτόματη Επίλυση του Παιχνιδιού

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07 Τμήμα θεωρίας: Α.Μ. 8, 9 Κάθε Πέμπτη, 11πμ-2μμ, ΑΜΦ23. Διδάσκων: Ντίνος Φερεντίνος Γραφείο 118 email: kpf3@cornell.edu Μάθημα: Θεωρία + προαιρετικό

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

Εφαρμογές Πληροφορικής

Εφαρμογές Πληροφορικής Εφαρμογές Πληροφορικής Κεφάλαιο 11 Πολυμέσα ΜΕΡΟΣ Α 1. Υπερκείμενο Ποιός είναι ο κόμβος, ποιός ο σύνδεσμος και ποιά η θερμή λέξη; 1 2. Υπερμέσα Χαρακτηριστικά Κόμβος (Node) Αποτελεί τη βάση πληροφοριών

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

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

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

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

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

Εισαγωγή στην Πληροφορική ΓΕΝΙΚΟ ΤΜΗΜΑ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ TEI ΧΑΛΚΙ ΑΣ Εισαγωγή στην Πληροφορική 1 Περιεχόµενα - Κωδικοποιήσεις - Αριθµητικά Συστήµατα 2 Ηλεκτρονικός Υπολογιστής Είπαµε ότι είναι, µία Ηλεκτρονική Μηχανή, που δουλεύει κάτω από τον έλεγχο εντολών αποθηκευµένων

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

1 ο Εργαστήριο Συντεταγμένες, Χρώματα, Σχήματα

1 ο Εργαστήριο Συντεταγμένες, Χρώματα, Σχήματα 1 ο Εργαστήριο Συντεταγμένες, Χρώματα, Σχήματα 1. Σύστημα Συντεταγμένων Το σύστημα συντεταγμένων που έχουμε συνηθίσει από το σχολείο τοποθετούσε το σημείο (0,0) στο σημείο τομής των δυο αξόνων Χ και Υ.

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

Επεξεργασία Χαρτογραφικής Εικόνας

Επεξεργασία Χαρτογραφικής Εικόνας Επεξεργασία Χαρτογραφικής Εικόνας ιδάσκων: Αναγνωστόπουλος Χρήστος Αρχές συµπίεσης δεδοµένων Ήδη συµπίεσης Συµπίεση εικόνων Αλγόριθµος JPEG Γιατί χρειαζόµαστε συµπίεση; Τα σηµερινά αποθηκευτικά µέσα αδυνατούν

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 422: ΣΥΣΤΗΜΑΤΑ ΠΟΛΥΜΕΣΩΝ Ακαδηµαϊκό Έτος 2004 2005, Χειµερινό Εξάµηνο Φροντιστηριακή Άσκηση 3: Εντροπία, κωδικοποίηση Quadtree 1. Εντροπία 22 Σεπτεµβρίου 2004

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

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

Α. Ερωτήσεις Ανάπτυξης οµηµένος Προγραµµατισµός-Κεφάλαιο 7 Σελίδα 1 α ό 10 ΕΝΟΤΗΤΑ ΙΙΙ (ΠΡΟΓΡΑΜΜΑΤΑ) ΚΕΦΑΛΑΙΟ 7: Είδη, Τεχνικές και Περιβάλλοντα Προγραµµατισµού Α. Ερωτήσεις Ανάπτυξης 1. Τι ονοµάζουµε γλώσσα προγραµµατισµού;

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ, ΤΜΗΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ, ΤΜΗΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΒΕΣ 04: ΣΥΜΠΙΕΣΗ ΚΑΙ ΜΕΤΑ ΟΣΗ ΠΟΛΥΜΕΣΩΝ Ακαδηµαϊκό Έτος 2007 2008, Χειµερινό Εξάµηνο 6 Νοεµβρίου 2007 Φροντιστηριακή Άσκηση 2: (I) Εντροπία,

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

Τεχνολογία Πολυμέσων. Ενότητα # 8: Αρχές κωδικοποίησης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 8: Αρχές κωδικοποίησης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Τεχνολογία Πολυμέσων Ενότητα # 8: Αρχές κωδικοποίησης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του

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

Αρχές κωδικοποίησης. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 08-1

Αρχές κωδικοποίησης. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 08-1 Αρχές κωδικοποίησης Απαιτήσεις κωδικοποίησης Είδη κωδικοποίησης Κωδικοποίηση εντροπίας Διαφορική κωδικοποίηση Κωδικοποίηση μετασχηματισμών Στρωματοποιημένη κωδικοποίηση Κβαντοποίηση διανυσμάτων Τεχνολογία

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

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

Μαλούτα Θεανώ Σελίδα 1 ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Α. ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ ΦΥΛΛΑΔΙΟ 6 ο ( Ενότητες 2.3 ) 1.Τι είναι πρόγραμμα; 2. Ποια είναι τα πλεονεκτήματα των γλωσσών υψηλού επιπέδου σε σχέση με τις γλώσσες

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

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

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1 Εικόνα Εισαγωγή Ψηφιακή αναπαράσταση Κωδικοποίηση των χρωμάτων Συσκευές εισόδου και εξόδου Βάθος χρώματος και ανάλυση Συμβολική αναπαράσταση Μετάδοση εικόνας Σύνθεση εικόνας Ανάλυση εικόνας Τεχνολογία

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 131: ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I ΕΡΓΑΣΙΑ 2

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 131: ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I ΕΡΓΑΣΙΑ 2 ΕΡΓΑΣΙΑ Διδάσκων: Γιώργος Χρυσάνθου Υπεύθυνος Άσκησης: Πύρρος Μπράτσκας Ημερομηνία Ανάθεσης: 3/10/015 Ημερομηνία Παράδοσης: 09/11/015 09:00 π.μ. I.Στόχος Στόχος αυτής της εργασίας είναι η χρησιμοποίηση

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

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

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Σχεδίαση με Ηλεκτρονικούς Υπολογιστές Ενότητα # 10: Χρωματικά μοντέλα στον ΗΥ Καθηγητής Ιωάννης Γ. Παρασχάκης Τμήμα Αγρονόμων & Τοπογράφων

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

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι Εισαγωγή Στον Προγραµµατισµό «C» Πίνακες Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Πίνακες στη C Ένας πίνακας στη C είναι

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

5.1 Θεωρητική εισαγωγή

5.1 Θεωρητική εισαγωγή ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 5 ΚΩ ΙΚΟΠΟΙΗΣΗ BCD Σκοπός: Η κατανόηση της µετατροπής ενός τύπου δυαδικής πληροφορίας σε άλλον (κωδικοποίηση/αποκωδικοποίηση) µε τη µελέτη της κωδικοποίησης BCD

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

ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ, ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΙ ΔΙΚΤΥΩΝ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ

ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ, ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΙ ΔΙΚΤΥΩΝ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ, ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΙ ΔΙΚΤΥΩΝ, ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2011-2012 ΕΡΓΑΣΙΑ ΕΞΑΜΗΝΟΥ Ποιος πρέπει να ολοκληρώσει αυτή την εργασία? Φοιτητές έτους >=2 που

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

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

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού ( Απαντήσεις & Λύσεις Βιβλίου) 1. Σκοποί κεφαλαίου Κύκλος ανάπτυξης προγράµµατος Κατηγορίες γλωσσών προγραµµατισµού

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

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

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

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

ΑΣΚΗΣΗ 2 ΒΑΣΙΚΑ ΚΑΙ ΣΥΝΘΕΤΑ ΣΗΜΑΤΑ ΔΥΟ ΔΙΑΣΤΑΣΕΩΝ - ΕΙΚΟΝΑΣ

ΑΣΚΗΣΗ 2 ΒΑΣΙΚΑ ΚΑΙ ΣΥΝΘΕΤΑ ΣΗΜΑΤΑ ΔΥΟ ΔΙΑΣΤΑΣΕΩΝ - ΕΙΚΟΝΑΣ ΑΣΚΗΣΗ 2 ΒΑΣΙΚΑ ΚΑΙ ΣΥΝΘΕΤΑ ΣΗΜΑΤΑ ΔΥΟ ΔΙΑΣΤΑΣΕΩΝ - ΕΙΚΟΝΑΣ Αντικείμενο: Κατανόηση και αναπαράσταση των βασικών σημάτων δύο διαστάσεων και απεικόνισης αυτών σε εικόνα. Δημιουργία και επεξεργασία των διαφόρων

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

DIP_06 Συμπίεση εικόνας - JPEG. ΤΕΙ Κρήτης

DIP_06 Συμπίεση εικόνας - JPEG. ΤΕΙ Κρήτης DIP_06 Συμπίεση εικόνας - JPEG ΤΕΙ Κρήτης Συμπίεση εικόνας Το μέγεθος μιας εικόνας είναι πολύ μεγάλο π.χ. Εικόνα μεγέθους Α4 δημιουργημένη από ένα σαρωτή με 300 pixels ανά ίντσα και με χρήση του RGB μοντέλου

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 132 Αρχές Προγραμματισμού ΙΙ ΑΣΚΗΣΗ 1 Το παιχνίδι «Οι Τρεις Σωματοφύλακες» Διδάσκων: Δημήτρης Ζεϊναλιπούρ Υπεύθυνος Άσκησης: Πύρρος Μπράτσκας Ημερομηνία Ανάθεσης:

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 4: ΣΥΣΤΗΜΑΤΑ ΠΟΛΥΜΕΣΩΝ Θεωρητικές Ασκήσεις (# ): ειγµατοληψία, κβαντοποίηση και συµπίεση σηµάτων. Στην τηλεφωνία θεωρείται ότι το ουσιαστικό περιεχόµενο της

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

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοηµοσύνη Ι» 7ο Φροντιστήριο 15/1/2008

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοηµοσύνη Ι» 7ο Φροντιστήριο 15/1/2008 Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοηµοσύνη Ι» 7ο Φροντιστήριο 5//008 Πρόβληµα ο Στα παρακάτω ερωτήµατα επισηµαίνουµε ότι perceptron είναι ένας νευρώνας και υποθέτουµε, όπου χρειάζεται, τη χρήση δικτύων

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

ΑΣΚΗΣΗ 5 η Η σειριακή επικοινωνία ΙΙ 1.1 ΣΚΟΠΟΣ Σκοπός της άσκησης αυτής είναι η κατανόηση σε βάθος των λειτουργιών που παρέχονται από το περιβάλλον LabView για τον χειρισµό της σειριακής επικοινωνίας

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

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 2 ο Τύποι Δεδοµένων Δήλωση Μεταβλητών Έξοδος Δεδοµένων Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Μνήµη και Μεταβλητές Σχέση Μνήµης Υπολογιστή και Μεταβλητών Η µνήµη (RAM) ενός

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

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

Προγραμματισμός Υπολογιστών με C++ Προγραμματισμός Υπολογιστών με C++ 3 η Εργασία Ακαδημαϊκό Έτος 206-7 Ημερομηνία Παράδοσης Εργασίας: 5 Ιανουαρίου 207. Εκφώνηση Να χρησιμοποιηθεί ο κώδικας που αναπτύξατε στις 2 προηγούμενες εργασίες για

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

Εργαστήριο 4. Εαρινό Εξάμηνο ΠΡΟΣΟΧΗ: Αρχίστε νωρίς το Εργαστήριο 4. Οι ασκήσεις είναι πιο απαιτητικές από τα προηγούμενα εργαστήρια.

Εργαστήριο 4. Εαρινό Εξάμηνο ΠΡΟΣΟΧΗ: Αρχίστε νωρίς το Εργαστήριο 4. Οι ασκήσεις είναι πιο απαιτητικές από τα προηγούμενα εργαστήρια. Τομέας Υλικού και Αρχιτεκτονικής Υπολογιστών ΗΥ134 - Εισαγωγή στην Οργάνωση και Σχεδίαση Η/Υ 1 Εργαστήριο 4 Εαρινό Εξάμηνο 2012-2013 Στόχοι του εργαστηρίου Χρήση στοίβας Συναρτήσεις ΠΡΟΣΟΧΗ: Αρχίστε νωρίς

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

Διάλεξη 17: Έλεγχος Λογισμικού

Διάλεξη 17: Έλεγχος Λογισμικού Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 17: Έλεγχος Λογισμικού (Κεφάλαιο 24.1-24.2, KNK-2ED) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 17-1 Μεγάλης

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Ακαδηµαϊκό Έτος 2003-2004, Εαρινό Εξάµηνο ιδάσκων

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

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος 4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος Μεταβλητές Συστήματος Η Processing χρησιμοποιεί κάποιες μεταβλητές συστήματος, όπως τις ονομάζουμε, για να μπορούμε να παίρνουμε πληροφορίες από το

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

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος

Κεφάλαιο 2.3: Προγραμματισμός. Επιστήμη ΗΥ Κεφ. 2.3 Καραμαούνας Πολύκαρπος Κεφάλαιο 2.3: Προγραμματισμός 1 2.3.1 Αναφορά σε γλώσσες προγραμματισμού και «Προγραμματιστικά Υποδείγματα» 2.3.1.1 Πρόγραμμα και Γλώσσες Προγραμματισμού Πρόγραμμα: σύνολο εντολών που χρειάζεται να δοθούν

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

ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΩΝ (E-CAD) ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ

ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΩΝ (E-CAD) ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΩΝ (E-CAD) ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2014 2015 ΕΡΓΑΣΙΑ ΕΞΑΜΗΝΟΥ Σκοπός της φετινής εργασίας εξαμήνου είναι η σχεδίαση ενός Συστήματος Εισαγωγής & Απεικόνισης Χαρακτήρων (στο

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις:

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012. Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ 23/04/2012 ΘΕΜΑ Α Α. Να απαντήσετε με Σ ή Λ στις παρακάτω προτάσεις: 1. Κάθε βρόγχος που υλοποιείται με την εντολή Για μπορεί να

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

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον

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

Οικονοµικό Πανεπιστήµιο Αθηνών. Τµήµα Πληροφορικής. Φθινοπωρινό Εξάµηνο 2015. Δοµές Δεδοµένων - Εργασία 2. Διδάσκων: E. Μαρκάκης

Οικονοµικό Πανεπιστήµιο Αθηνών. Τµήµα Πληροφορικής. Φθινοπωρινό Εξάµηνο 2015. Δοµές Δεδοµένων - Εργασία 2. Διδάσκων: E. Μαρκάκης Οικονοµικό Πανεπιστήµιο Αθηνών Τµήµα Πληροφορικής Φθινοπωρινό Εξάµηνο 2015 Δοµές Δεδοµένων - Εργασία 2 Διδάσκων: E. Μαρκάκης Ταξινόµηση και Ουρές Προτεραιότητας Σκοπός της 2 ης εργασίας είναι η εξοικείωση

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

Σελίδα 1 από 12. Απαντήσεις στο φυλλάδιο 55. Ερώτηση 1 η : Ένα υπολογιστικό σύστηµα αποτελείται από:

Σελίδα 1 από 12. Απαντήσεις στο φυλλάδιο 55. Ερώτηση 1 η : Ένα υπολογιστικό σύστηµα αποτελείται από: Σελίδα 1 από 12 Απαντήσεις στο φυλλάδιο 55 Ερώτηση 1 η : Ένα υπολογιστικό σύστηµα αποτελείται από: (α) Κεντρική Μονάδα Επεξεργασίας. (β) Κύρια Μνήµη. (γ) Μονάδες εισόδου. (δ) Μονάδες εξόδου. (ε) Βοηθητική

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

Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Τομέας Ηλεκτρονικής και Υπολογιστών ΤΗΜΜΥ Α.Π.Θ 2015-2016 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ.

Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Τομέας Ηλεκτρονικής και Υπολογιστών ΤΗΜΜΥ Α.Π.Θ 2015-2016 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Τομέας Ηλεκτρονικής και Υπολογιστών 5 Εξάμηνο ΤΗΜΜΥ Α.Π.Θ 2015-2016 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ DS Prximity Το παιχνίδι Το Prximity είναι ένα παιχνίδι στρατηγικής,

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

Τιμή Τιμή. σκορ. ζωές

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/09, 23:59

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/09, 23:59 ΣΕΤ ΑΣΚΗΣΕΩΝ 2 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2009-20010 Προθεσµία: 15/11/09, 23:59 Στόχοι Χρήση συναρτήσεων Χρήση µονοδιάστατων πινάκων Διαχείριση συµβολοσειρών Φορµαρισµένη έξοδος δεδοµένων

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

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Ενότητα 3 Λειτουργίες σε Bits, Αριθμητικά Συστήματα Χρήστος Γκουμόπουλος Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Φύση υπολογιστών Η

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

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 2 η Τύποι Δεδομένων Δήλωση Μεταβλητών Έξοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα

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

Επεξεργασία Χαρτογραφικής Εικόνας

Επεξεργασία Χαρτογραφικής Εικόνας Επεξεργασία Χαρτογραφικής Εικόνας ιδάσκων: Αναγνωστόπουλος Χρήστος Βασικά στοιχεία εικονοστοιχείου (pixel) Φυσική λειτουργία όρασης Χηµική και ψηφιακή σύλληψη (Κλασσικές και ψηφιακές φωτογραφικές µηχανές)

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

Παιδαγωγική προσέγγιση: Πρόταση για την διδασκαλία της έννοιας αλγόριθµός στο περιβάλλον MicroWorlds Pro

Παιδαγωγική προσέγγιση: Πρόταση για την διδασκαλία της έννοιας αλγόριθµός στο περιβάλλον MicroWorlds Pro Παιδαγωγική προσέγγιση: Πρόταση για την διδασκαλία της έννοιας αλγόριθµός στο περιβάλλον MicroWorlds Pro Το «Φύλλο Εργασίας» για τους µαθητές Το παρακάτω φύλλο εργασίας µπορεί να χρησιµοποιηθεί ως εισαγωγικό

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

Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας

Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας ΕΡΓΑΣΙΑ 2 Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας Εισαγωγή Ημερομηνία Ανάρτησης: 16/02/2017 Ημερομηνία Παράδοσης: 06/03/2017,

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

ΚΕΦΑΛΑΙΟ 2. Οι Μεταβολές ως Χαρακτηριστικό Γνώρισµα της Τεχνολογίας Επικοινωνιών

ΚΕΦΑΛΑΙΟ 2. Οι Μεταβολές ως Χαρακτηριστικό Γνώρισµα της Τεχνολογίας Επικοινωνιών ΚΕΦΑΛΑΙΟ 2 Οι Μεταβολές ως Χαρακτηριστικό Γνώρισµα της Τεχνολογίας Επικοινωνιών ΕΡΩΤΗΣΕΙΣ ΚΛΕΙΣΤΟΥ ΤΥΠΟΥ Ερωτήσεις της µορφής "σωστό-λάθος" Σηµειώστε αν είναι σωστή ή λανθασµένη καθεµιά από τις παρακάτω

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

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας

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

ΟΤΑ Επιχειρησιακή Νοηµοσύνη. Ενότητα: Bc1.1.6 Παρακολούθηση (monitoring) εκτέλεσης Επιχειρησιακών Διαδικασιών και εξαγωγή «µετρήσιµων» (metrics)

ΟΤΑ Επιχειρησιακή Νοηµοσύνη. Ενότητα: Bc1.1.6 Παρακολούθηση (monitoring) εκτέλεσης Επιχειρησιακών Διαδικασιών και εξαγωγή «µετρήσιµων» (metrics) ΟΤΑ Επιχειρησιακή Νοηµοσύνη Ενότητα: Bc1.1.6 Παρακολούθηση (monitoring) εκτέλεσης Επιχειρησιακών Διαδικασιών και εξαγωγή «µετρήσιµων» (metrics) Πρακτική Άσκηση (επίπεδο 2): Η άσκηση ζητά να εκτελεσθεί

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

ΟΤΑ Επιχειρησιακή Νοηµοσύνη

ΟΤΑ Επιχειρησιακή Νοηµοσύνη ΟΤΑ Επιχειρησιακή Νοηµοσύνη Ενότητα: Bc1.1.5 Επιχειρησιακές Διαδικασίες στους Δήµους: Εξοικείωση µε τη χρήση ΙΙ Πρακτική Άσκηση (επίπεδο 1): Στόχος της άσκησης είναι η εξοικείωση των εκπαιδευοµένων µε

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 451 Εξόρυξη Δεδομένων στον Παγκόσμιο Ιστό I. Στόχος ΑΣΚΗΣΗ 1 Ανάλυση συσχετίσεων ανάμεσα σε προϊόντα Διδάσκων: Γιώργος Πάλλης Υπεύθυνος Εργασίας: Παύλος Αντωνίου

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

Η δήλωση πού δηµιουργεί αποθήκευση τών δεδοµένων ονοµαζεται ορισµός τής µεταβλητής.

Η δήλωση πού δηµιουργεί αποθήκευση τών δεδοµένων ονοµαζεται ορισµός τής µεταβλητής. Από το βιβλίο C: Βήµα-Πρός-Βήµα, Κεφάλαιο 3ο Συγγραφείς: Οµάδα Waite, Mitchell Waite και Stephen Prata Εκδότης: Μ. Γκιούρδας Ανατύπωση σε ηλεκτρονική µορφή: Αλέξανδρος Στεφανίδης 3.4 Τύποι εδοµένων τής

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

Εισαγωγή στο περιβάλλον Code::Blocks

Εισαγωγή στο περιβάλλον Code::Blocks Εισαγωγή στο περιβάλλον Code::Blocks Στο παρόν εγχειρίδιο παρουσιάζεται η διαδικασία ανάπτυξης, μεταγλώττισης και εκτέλεσης ενός προγράμματος C στο περιβάλλον του Code::Blocks. Η διαδικασία αυτή παρουσιάζεται

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

DIP_01 Εισαγωγή στην ψηφιακή εικόνα. ΤΕΙ Κρήτης

DIP_01 Εισαγωγή στην ψηφιακή εικόνα. ΤΕΙ Κρήτης DIP_01 Εισαγωγή στην ψηφιακή εικόνα ΤΕΙ Κρήτης Πληροφορίες Μαθήματος ιαλέξεις Πέμπτη 12:15 15:00 Αιθουσα Γ7 ιδάσκων:. Κοσμόπουλος Γραφείο: Κ23-0-15 (ισόγειο( κλειστού γυμναστηρίου) Ωρες γραφείου Τε 16:00

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

Αναπαράσταση Μη Αριθμητικών Δεδομένων

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

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/10, 23:59

ΣΕΤ ΑΣΚΗΣΕΩΝ 2. Προθεσµία: 15/11/10, 23:59 ΣΕΤ ΑΣΚΗΣΕΩΝ 2 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2010-2011 Προθεσµία: 15/11/10, 23:59 Στόχοι Πίνακες Συναρτήσεις Συµβολοσειρές Χρήση µεταβλητών και σταθερών Χρήση τελεστών Χρήση δοµών ελέγχου

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

! Δεδομένα: ανεξάρτητα από τύπο και προέλευση, στον υπολογιστή υπάρχουν σε μία μορφή: 0 και 1

! Δεδομένα: ανεξάρτητα από τύπο και προέλευση, στον υπολογιστή υπάρχουν σε μία μορφή: 0 και 1 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 5-6 Αναπαράσταση Μη Αριθμητικών Δεδομένων (κείμενο, ήχος και εικόνα στον υπολογιστή) http://di.ionio.gr/~mistral/tp/csintro/

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

ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 1.3-1.4: Εισαγωγή Στον Προγραµµατισµό ( ιάλεξη 2) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγικές Έννοιες - Ορισµοί Ο κύκλος ανάπτυξης προγράµµατος Παραδείγµατα Πότε χρησιµοποιούµε υπολογιστή?

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

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

Εισαγωγή στην Πληροφορική Εισαγωγή στην Πληροφορική Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή στην Πληροφορική 1 Γενικές πληροφορίες Εισαγωγή στην Πληροφορική ιδασκαλία: Παναγιώτης Χατζηδούκας Email:

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

CE121 Προγραµµατισµός 2. Εισαγωγή σε Makefiles. CE121 -

CE121 Προγραµµατισµός 2. Εισαγωγή σε Makefiles. CE121 - CE121 Προγραµµατισµός 2 Εισαγωγή σε Makefiles 1 Η διαδικασία µεταγλώττισης myprog.c gcc myprog 2 Η διαδικασία µεταγλώττισης myprog.c preprocessor (cc1) /tmp/cczxt.i assembler (as) compiler (cc1) /tmp/cczxt.o

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

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

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

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

«Μηχανή Αναζήτησης Αρχείων» Ημερομηνία Παράδοσης: 30/04/2015, 09:00 π.μ.

«Μηχανή Αναζήτησης Αρχείων» Ημερομηνία Παράδοσης: 30/04/2015, 09:00 π.μ. ΕΡΓΑΣΙΑ 4 «Μηχανή Αναζήτησης Αρχείων» Ημερομηνία Παράδοσης: 30/04/2015, 09:00 π.μ. Στόχος Στόχος της Εργασίας 4 είναι να η εξοικείωση με την αντικειμενοστρέφεια (object oriented programming). Πιο συγκεκριμένα,

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

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2012 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2012 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ: ΚΑΤΕΥΘΥΝΣΗ: ΜΑΘΗΜΑ: ΘΕΜΑ Α Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ (2ος Κύκλος) ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ηµεροµηνία: Κυριακή 22 Απριλίου 2012 ΕΚΦΩΝΗΣΕΙΣ Α1. Να γράψετε στο τετράδιό

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

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Σύντομη εισαγωγή στο εργαστήριο

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Σύντομη εισαγωγή στο εργαστήριο ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Σύντομη εισαγωγή στο εργαστήριο Στο φετινό εργαστήριο του μαθήματος, έχετε τη δυνατότητα να δουλέψετε σε 2 περιβάλλοντα. Ένα σε περιβάλλον UNIX μέσω απομακρυσμένης σύνδεσης σε

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

Αρχές κωδικοποίησης. Τεχνολογία Πολυµέσων 08-1

Αρχές κωδικοποίησης. Τεχνολογία Πολυµέσων 08-1 Αρχές κωδικοποίησης Απαιτήσεις κωδικοποίησης Είδη κωδικοποίησης Βασικές τεχνικές κωδικοποίησης Κωδικοποίηση Huffman Κωδικοποίηση µετασχηµατισµών Κβαντοποίηση διανυσµάτων ιαφορική κωδικοποίηση Τεχνολογία

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

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 1

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 1 ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 1 ΒΑΣΙΚΟΙ ΧΕΙΡΙΣΜΟΙ ΕΙΚΟΝΑΣ Αντικείμενο: Εισαγωγή στις βασικές αρχές της ψηφιακής επεξεργασίας εικόνας χρησιμοποιώντας το MATLAB και το πακέτο Επεξεργασίας Εικόνας. Περιγραφή και αναπαράσταση

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

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

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

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

Περιεχόµενα 1 Περιγραφή Προετοιµασία εκτέλεσης της άσκησης Πρόσβαση στην άσκηση τοπικά στον Υπολογιστή σας Περιεχόµενα αρχε

Περιεχόµενα 1 Περιγραφή Προετοιµασία εκτέλεσης της άσκησης Πρόσβαση στην άσκηση τοπικά στον Υπολογιστή σας Περιεχόµενα αρχε ΟΤΑ Επιχειρησιακή Νοηµοσύνη Ενότητα: Bc.1.1.1 Επιχειρησιακή Νοηµοσύνη (Business Intelligence - ΒΙ) Πρακτική Άσκηση (επίπεδο 1): Στόχος της άσκησης είναι η εξοικείωση των εκπαιδευόµενων µε τη χρήση και

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Πληροφορικής ΕΠΛ 451 Εξόρυξη Δεδομένων στον Παγκόσμιο Ιστό I. Στόχος ΑΣΚΗΣΗ 2 Ομαδοποίηση (Clustering) και Μείωση Διαστάσεων (Dimensionality Reduction) Διδάσκων: Γιώργος Πάλλης

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

Εισαγωγή. Διαλέξεις στο μάθημα: Μεταφραστές Γιώργος Μανής

Εισαγωγή. Διαλέξεις στο μάθημα: Μεταφραστές Γιώργος Μανής Εισαγωγή Διαλέξεις στο μάθημα: Μεταφραστές Γιώργος Μανής Μεταγλωττιστής Αρχικό πρόγραμμα (source program) Μεταγλωττιστής Τελικό πρόγραμμα (object program) Διαγνωστικά μηνύματα Μεταγλωττιστής Παίρνει σαν

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 2ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΣΦΑΛΜΑΤΑ ΜΕΤΑΓΛΩΤΤΙΣΗΣ Η γλώσσα C κάνει αυστηρή διάκριση μεταξύ πεζών

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

Περιεχόµενα. I Βασικές Γνώσεις 1

Περιεχόµενα. I Βασικές Γνώσεις 1 Περιεχόµενα I Βασικές Γνώσεις 1 1 Μοντελοποίηση Προγραµµάτων 3 1.1 Ψευδογλώσσα....................... 6 1.2 Διαγράµµατα Ροής..................... 6 1.3 Παραδείγµατα σε Ψευδογλώσσα και Διαγράµµατα Ροής.

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

Συστήµατα και Αλγόριθµοι Πολυµέσων

Συστήµατα και Αλγόριθµοι Πολυµέσων Συστήµατα και Αλγόριθµοι Πολυµέσων Ιωάννης Χαρ. Κατσαβουνίδης Οµιλία #5: Αρχές Επεξεργασίας Σηµάτων Πολυµέσων 7 Νοεµβρίου 2005 Επανάληψη Θεωρία Πληροφορίας Εντροπία: H ( P) i= 0 Κωδικοποίηση Huffman 3

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

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Εισαγωγή Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Βιβλιογραφία "C Προγραμματισμός", Deitel & Deitel, Πέμπτη Έκδοση, Εκδόσεις

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

ΕΝΟΤΗΤΑ 6 6.0 ΤΗΛΕΟΡΑΣΗ ΕΙΣΑΓΩΓΗ

ΕΝΟΤΗΤΑ 6 6.0 ΤΗΛΕΟΡΑΣΗ ΕΙΣΑΓΩΓΗ ΕΝΟΤΗΤΑ 6 60 ΤΗΛΕΟΡΑΣΗ ΕΙΣΑΓΩΓΗ Η τηλεόραση είναι σήμερα ένα από τα πιο σημαντικά επικοινωνιακά συστήματα Δεν υπάρχει άνθρωπος, στις ανεπτυγμένες χώρες, που να μην αφιερώνει ορισμένες ώρες την ημέρα μπροστά

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

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2012 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2012 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ: ΚΑΤΕΥΘΥΝΣΗ: ΜΑΘΗΜΑ: ΘΕΜΑ Α Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ (2ος Κύκλος) ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Ηµεροµηνία: Κυριακή 22 Απριλίου 2012 ΕΚΦΩΝΗΣΕΙΣ Α1. Να γράψετε στο τετράδιό

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

H ΓΛΩΣΣΑ C. Μάθηµα 1: Το Πρώτο µας Πρόγραµµα σε C. ηµήτρης Ψούνης

H ΓΛΩΣΣΑ C. Μάθηµα 1: Το Πρώτο µας Πρόγραµµα σε C. ηµήτρης Ψούνης H ΓΛΩΣΣΑ C Μάθηµα 1: Το Πρώτο µας Πρόγραµµα σε C ηµήτρης Ψούνης 2 Περιεχόµενα Μαθήµατος Α. Θεωρία 1. Κύκλος Ανάπτυξης Προγράµµατος 1. Συγγραφή και Μεταγλώττιση ενός προγράµµατος 2. Εκτέλεση του προγράµµατος

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

[2] Υπολογιστικά συστήματα: Στρώματα. Τύποι δεδομένων. Μπιτ. επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό

[2] Υπολογιστικά συστήματα: Στρώματα. Τύποι δεδομένων. Μπιτ. επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό Υπολογιστικά συστήματα: Στρώματα 1 ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό δεδομένα Αναπαράσταση δεδομένων 2 Τύποι δεδομένων Τα δεδομένα

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

Μάθημα 5: To Μοντέλο Αναφοράς O.S.I.

Μάθημα 5: To Μοντέλο Αναφοράς O.S.I. Μάθημα 5: To Μοντέλο Αναφοράς O.S.I. 5.1 Γενικά Τα πρώτα δίκτυα χαρακτηρίζονταν από την «κλειστή» αρχιτεκτονική τους με την έννοια ότι αυτή ήταν γνωστή μόνο στην εταιρία που την είχε σχεδιάσει. Με τον

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσµία: Τρίτη 10/11/2015, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 1. Προθεσµία: Τρίτη 10/11/2015, 22:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 1 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2015-2016 Προθεσµία: Τρίτη 10/11/2015, 22:00 Διαβάστε πριν ξεκινήσετε Διαβάστε την εκφώνηση προσεκτικά και σχεδιάστε το πρόγραµµά σας στο χαρτί.

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

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 9 η Χαρακτήρες Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης

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

Ενότητα 1. Γνωρίζω τον υπολογιστή ως ενιαίο σύστημα

Ενότητα 1. Γνωρίζω τον υπολογιστή ως ενιαίο σύστημα Ενότητα 1 Γνωρίζω τον υπολογιστή ως ενιαίο σύστημα 1.1 Ψηφιακό Αναλογικό (βιβλίο μαθητή σελ. 104) στη διπλανή φωτογραφία τα χρώματα διαδέχονται το ένα το άλλο χωρίς να μπορούμε να διακρίνουμε τις ενδιάμεσες

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

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

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

Ενηµερώσεις λογισµικού Οδηγός χρήσης

Ενηµερώσεις λογισµικού Οδηγός χρήσης Ενηµερώσεις λογισµικού Οδηγός χρήσης Copyright 2009 Hewlett-Packard Development Company, L.P. Η ονοµασία Windows είναι σήµα κατατεθέν της Microsoft Corporation στις Ηνωµένες Πολιτείες. Οι πληροφορίες στο

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

8.1 Θεωρητική εισαγωγή

8.1 Θεωρητική εισαγωγή ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 8 ΣΤΟΙΧΕΙΑ ΜΝΗΜΗΣ ΚΑΤΑΧΩΡΗΤΕΣ Σκοπός: Η µελέτη της λειτουργίας των καταχωρητών. Θα υλοποιηθεί ένας απλός στατικός καταχωρητής 4-bit µε Flip-Flop τύπου D και θα µελετηθεί

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

Πληροφορική 2. Δομές δεδομένων και αρχείων

Πληροφορική 2. Δομές δεδομένων και αρχείων Πληροφορική 2 Δομές δεδομένων και αρχείων 1 2 Δομή Δεδομένων (data structure) Δομή δεδομένων είναι μια συλλογή δεδομένων που έχουν μεταξύ τους μια συγκεκριμένη σχέση Παραδείγματα δομών δεδομένων Πίνακες

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

Δημιουργία μιας εφαρμογής Java με το NetBeans

Δημιουργία μιας εφαρμογής Java με το NetBeans Δημιουργία μιας εφαρμογής Java με το NetBeans Για να δημιουργήσετε μια εφαρμογή Java πρέπει να ακολουθήσετε τα εξής βήματα : Αρχικά πρέπει να δημιουργηθεί ένα project το οποίο θα περιέχει όλα τα αρχεία

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

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1 Εικόνες και γραφικά Περιγραφή στατικών εικόνων Αναπαράσταση γραφικών Υλικό γραφικών Dithering και anti-aliasing Σύνθεση εικόνας Ανάλυση εικόνας Μετάδοση εικόνας Τεχνολογία Πολυµέσων 05-1 Περιγραφή στατικών

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

2.2.1. Ανοίξτε την εικόνα Hel_MDSGEO και δημιουργήστε δύο έγχρωμα σύνθετα ένα σε πραγματικό χρώμα (True color) και ένα σε ψευδοέχρωμο υπέρυθρο (CIR)

2.2.1. Ανοίξτε την εικόνα Hel_MDSGEO και δημιουργήστε δύο έγχρωμα σύνθετα ένα σε πραγματικό χρώμα (True color) και ένα σε ψευδοέχρωμο υπέρυθρο (CIR) ΕΡΓΑΣΤΗΡΙΟ 2 ο : Φασματικές υπογραφές 2.1. Επανάληψη από τα προηγούμενα 2.2.1. Ανοίξτε την εικόνα Hel_MDSGEO και δημιουργήστε δύο έγχρωμα σύνθετα ένα σε πραγματικό χρώμα (True color) και ένα σε ψευδοέχρωμο

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

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ της Πλατφόρμας Τηλεκατάρτισης ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή...2 2. Αρχική σελίδα, Εισαγωγή & Περιβάλλον Συστήματος...3 2.1. Αρχική σελίδα εισαγωγής...3 2.2. Εισαγωγή στην Πλατφόρμα Τηλε-κατάρτισης...4

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