Γέννηση ενδιάμεσης αναπαράστασης. Προηγμένα Θέματα Θεωρητικής Πληροφορικής. Τύποι IR. Άποψη του μεταγλωττιστή από την πλευρά της IR.
|
|
- Μαργαρίτες Βικελίδης
- 7 χρόνια πριν
- Προβολές:
Transcript
1 Η έννοια της ενδιάμεσης αναπαράστασης Προηγμένα Θέματα Θεωρητικής Πληροφορικής Γέννηση ενδιάμεσης αναπαράστασης Νικόλαος Καββαδίας 17 Μαρτίου 2010 Ενδιάμεση αναπαράσταση (IR: intermediate representation): απλοποιημένη, σημασιολογικά ισοδύναμη μορφή του πηγαίου προγράμματος Είναι η κοινή (koine) γλώσσα η οποία χρησιμοποιείται για την επικοινωνία πληροφορίας για το πηγαίο πρόγραμμα από το frontend στο backend του μεταγλωττιστή Παράγεται από τα αφηρημένα συντακτικά δένδρα (AS: Abstract Syntax ree) στα οποία αποδομείται το πηγαίο πρόγραμμα από το frontend Στο επίπεδο της IR υλοποιούνται μετασχηματισμοί για την εφαρμογή βελτιστοποιήσεων ανεξάρτητων από την αρχιτεκτονική του στοχευόμενου επεξεργαστή Άποψη του μεταγλωττιστή από την πλευρά της IR Τύποι IR Η εξαγωγή της IR είναι το αποτέλεσμα της λεκτικής, συντακτικής και σημασιολογικής ανάλυσης του πηγαίου προγράμματος Επίπεδη διαμόρφωση σε μορφή εντολών: κώδικας τριών διευθύνσεων (hree-address Code, συχνά 3AC ή AC) Απλή δομή, κατάλληλη για βελτιστοποιήσεις Διαμόρφωση τύπου γράφου: Γράφος Ροής Ελέγχου-Δεδομένων (CDG: Control-Data low Graph) Περισσότερο αποκαλυπτική για τα χαρακτηριστικά του πηγαίου προγράμματος, κατάλληλη για γέννηση κώδικα
2 Βασικά στοιχεία από τη Θεωρία Γράφων (1) Βασικά στοιχεία από τη Θεωρία Γράφων (2) Ενας μη κατευθυνόμενος γράφος (undirected graph) είναι ένα διατεταγμένο ζεύγος G = V(G), E(G), όπου V(G) είναι το σύνολο κορυφών του G και E(G) είναι το σύνολο ακμών του G. Κάθε ακμή (edge) είναι ένα διμελές σύνολο το οποίο αποτελείται από δύο κορυφές, οι οποίες καλούνται τερματικά στοιχεία της ακμής Μία κορυφή ονομάζεται ισοδύναμα και κόμβος (node) ή κάθετος (vertex) Σε κάθε κόμβο ή ακμή μπορεί να ανατεθεί αριθμητική τιμή, η οποία αποκαλείται βάρος (weight) για την απόδοση κάποιας έννοιας κόστους στον αντίστοιχο κόμβο ή ακμή Παράδειγμα γράφου V = 1, 2, 3, 4, 5, 6 E = (1,3), (1,6), (2,5), (3,4), (3,6) Χαρακτηριστικά ενός γράφου Αν u, v E(G), τότε οι u και v είναι γειτονικές κορυφές στο γράφο G Η ακμή (u, v) είναι προσπίπτουσα (incident) στις κορυφές u και v Ενας βρόχος είναι μια ακμή της οποίας τα τερματικά σημεία συμπίπτουν, όπως για παράδειγμα η (u, u) Απλός γράφος είναι κάθε γράφος που δεν έχει βρόχους ή πολλαπλές ακμές Η τάξη ενός γράφου G, την οποία συμβολίζουμε ως n(g), είναι ο αριθμός των κορυφών του γράφου G Ενας μη κατευθυνόμενος γράφος αποκαλείται αραιός (sparse) αν ο συνολικός αριθμός των ακμών είναι μικρός σε σύγκριση με τον μέγιστο δυνατό ((N (N 1))/2)) ή πυκνός (dense) όταν συμβαίνει το αντίθετο Βασικά στοιχεία από τη Θεωρία Γράφων (3) Βασικά στοιχεία από τη Θεωρία Γράφων (4) Κατευθυνόμενος γράφος (directed graph) είναι ένα διατεταγμένο ζεύγος G = V(G), E(G), όπου V(G) είναι το σύνολο κορυφών του G και E(G) είναι το σύνολο ακμών του G. Κάθε ακμή είναι ένα διατεταγμένο ζεύγος (ordered pair) αποτελούμενο από δύο κορυφές Για την ακμή u, v, η κορυφή u αποτελεί την ουρά της (tail), ενώ η κορυφή v την κεφαλή της (head) Ο βαθμός εξόδου (out-degree) μιας κορυφής είναι ο αριθμός των ακμών που ξεκινούν από την κορυφή αυτή Ο βαθμός εισόδου (in-degree) μιας κορυφής είναι ο αριθμός των ακμών που καταλήγουν στην κορυφή αυτή Παράδειγμα κατευθυνόμενου γράφου Ενα μονοπάτι (path) από την κορυφή u στην x είναι μια ακολουθία κορυφών (v 0, v 1,..., v k ) έτσι ώστε v 0 = u και v k = x και οι ακμές v 0, v 1, ως v k 1, v k ανήκουν στον γράφο. Το μήκος ενός τέτοιου μονοπατιού ισούται με k Μία κορυφή x αποκαλείται προσβάσιμη από την κορυφή u όταν υπάρχει μονοπάτι από την u μέχρι την x Ενα μονοπάτι ονομάζεται απλό, όταν καμία κορυφή δεν περιέχεται περισσότερες από μία φορές Ενα μονοπάτι αποτελεί κύκλο όταν διαγραφόμενο από μία κορυφή, καταλήγει στην ίδια κορυφή Ενας γράφος ονομάζεται κατευθυνόμενος ακυκλικός γράφος (DAG: directed acyclic graph) όταν αποτελεί έναν κατευθυνόμενο γράφο στον οποίο δεν σημειώνεται κυκλικό μονοπάτι
3 Τρόποι αναπαράστασης γράφων: Παράδειγμα για μη κατευθυνόμενο γράφο Ζητήματα που επηρεάζουν το σχεδιασμό μιας IR Λίστα ακμών (edge list) v1 v2 e1 4 3 e2 1 3 e3 2 5 e4 6 1 e5 3 6 Πίνακας γειτνίασης (adjacency matrix) v1 v2 v3 v4 v5 v6 v v v v v v Λίστα γειτνίασης (adjacency list) Κορυφή Προσκείμενες κορυφές 1 3, , 4, , 1 Τα χαρακτηριστικά της πηγαίας και της στοχευόμενης γλώσσας Τα χαρακτηριστικά των σχεδιαζόμενων βελτιστοποιήσεων Επιλογή του κατάλληλου επιπέδου για την IR Πιο κοντά στην πηγαία γλώσσα ή πιο κοντά στην γλώσσα στόχο, με αποτέλεσμα την απώλεια δομικής πληροφορίας, π.χ. της οργάνωσης του πηγαίου προγράμματος Βελτιστοποιήσεις όπως η διαγράμμιση συνάρτησης και οι μετασχηματισμοί επαναχρησιμοποίησης δεδομένων χρειάζονται πληροφορία για την οργάνωση του πηγαίου προγράμματος Ο καταμερισμός καταχωρητών και η διοχέτευση λογισμικού εξυπηρετούνται από IR χαμηλού επιπέδου Σε πραγματικούς μεταγλωττιστές όπως οι Phoenix, COINS, υλοποιούνται περισσότερες της μιας IR: HIR (High-Level IR), LIR (Low-Level IR) Υποβιβασμός (αποδόμηση) σύνθετων εκφράσεων Προγραμματιστικές δομές οι οποίες αποδομούνται σε απλούστερες εντολές ελέγχου και επανάληψης προσπελάσεις σε στοιχεία πίνακα προσπελάσεις σε στοιχεία σύνθετων δομών δεδομένων (όπως είναι η struct στην ANSI C και η record στην Pascal) σύνθετες αριθμητικές εκφράσεις Παράδειγμα: ανάγνωση του στοιχείου του πίνακα a στη διεύθυνση i*widh+(j+2) και ανάθεση στην μεταβλητή b b = a[i][j+2]; => t1 = j+2; t2 = WIDH * i; t3 = t1 + t2; t4 = 4 * t3; t5 = address(a); t6 = t4 + t5; t7 = *t6; b = t7; Αφηρημένο συντακτικό δένδρο (AS: Abstract Syntax ree) Φυσική αναπαράσταση της εξόδου του συντακτικού αναλυτή για το πηγαίο πρόγραμμα Οι κόμβοι αναπαριστούν λεκτικές μονάδες του πηγαίου προγράμματος Παράδειγμα: το AS για την έκφραση a + a (b c) + (b c) d b + + * * - a - c b a c d
4 Κατευθυνόμενοι ακυκλικοί γράφοι (DAGs) για την αναπαράσταση εκφράσεων Κώδικας τριών διευθύνσεων (AC: hree Address Code) Η αναπαράσταση DAG μιας έκφρασης αναγνωρίζει τις κοινές υποεκφράσεις (CSE: Common Subexpression), δηλ. εκείνες τις εκφράσεις που εμφανίζονται περισσότερες από μία φορά στο AS Ενας κόμβος N που αναπαριστά μια CSE έχει περισσότερους από έναν κόμβους-παιδιά Σε ένα AS η κοινή υποέκφραση εμφανίζεται σε τόσα αντίτυπα όσες φορές εμφανίζεται στην αρχική έκφραση Παράδειγμα: το DAG για την έκφραση a + a (b c) + (b c) d + + * Γραμμικοποιημένη αναπαράσταση ενός AS ή DAG Ακολουθία απλών εντολών, οι οποίες χρησιμοποιούν κατά μέγιστο τρία ορίσματα: δύο ορίσματα ανάγνωσης και ένα εγγραφής Ο κώδικας AC ϑυμίζει τις εντολές συμβολομεταφραστή ενός απλού επεξεργαστή RISC με τη διαφορά ότι γίνεται αναφορά σε συμβολικές ϑέσεις αποθήκευσης Για το παράδειγμα: * t4 t5 + t3 + t2 t1 = b - c; t2 = a * t1; t3 = a + t2; t4 = t1 * d; t5 = t3 + t4; * d t1 d * t1 a - - a b c b c Περιγραφή εντολών και διευθύνσεων σε κώδικα AC (1) Περιγραφή εντολών και διευθύνσεων σε κώδικα AC (2) Ο κώδικας τριών διευθύνσεων αποτελείται από εντολές που δρουν πάνω σε δεδομένα τα οποία υποδεικνύονται από διευθύνσεις Οι διευθύνσεις αυτές σε μεταγενέστερο στάδιο της μεταγλώττισης αποδίδουν μεταβλητές που αποθηκεύονται σε φυσικούς καταχωρητές ή σε ϑέσεις μνήμης δεδομένων Οι διευθύνσεις σε εντολές AC μπορεί να είναι ονόματα, σταθερές, ή προσωρινές μεταβλητές Ονόματα: όπως ονόματα μεταβλητών του πηγαίου προγράμματος (μεταβλητές καθολικής ή τοπικής εμβέλειας) Σταθερές: αριθμητικές ή συμβολικές Προσωρινές μεταβλητές: τις παράγει ο μεταγλωττιστής κατά την αποδόμηση του πηγαίου προγράμματος Τύποι εντολών σε AC Συμβολικές ετικέττες (symbolic labels) για τον καθορισμό συγκεκριμένων σημείων στη ροή του προγράμματος Στοχεύονται από εντολές μεταφοράς ροής ελέγχου Παίρνουν οριστικές τιμές (δείκτη εντολής) από ένα δεύτερο πέρασμα (backpatching) Εντολές ανάθεσης της μορφής: x = y op z; όπου op είναι τελεστής αριθμητικός, λογικός ή σύγκρισης Εντολές ανάθεσης για μοναδιαίους τελεστές: x = op y; όπως είναι οι τελεστές αντιστροφής, λογικής άρνησης, και μετατροπής τύπου δεδομένων (casting) Εντολές αντιγραφής της μορφής x = y;
5 Περιγραφή εντολών και διευθύνσεων σε κώδικα AC (3) Μεταγλώττιση πηγαίου κώδικα σε AC Τύποι εντολών σε AC (συνέχεια) Άλματα χωρίς συνθήκη: goto LABEL; Άλματα υπό συνθήκη της μορφής if (x) goto LABEL; και if (!x) goto LABEL; Κλήση υποπρογράμματος με n ορίσματα param x1; param x2;... param xn; call p, n; // or y = call p, n; Επιστροφή τιμής (χρήση σε υποπρογράμματα): return y; Αναθέσεις σε στοιχεία πίνακα όπως x = y[i]; και x[i] = y; που εκφράζουν λειτουργίες φόρτωσης από και αποθήκευσης σε μνήμη Δεικτοδοτημένες αναθέσεις x = &y; η ανάθεση της διεύθυνσης της μεταβλητής y στην x x = *y; η τιμή που βρίσκεται στη διεύθυνση y ανατίθεται στη μεταβλητή x *x = y; η τιμή η οποία δεικτοδοτείται από τον δείκτη x ισούται πλέον με y Εστω το εξής τμήμα πηγαίου κώδικα do { i = i + 1; } while (a[i] < v); Μετατροπή σε AC L: t1 = i + 1; i = t1; t2 = i * 4; t3 = a[t2]; if (t3 < v) goto L; Παραδείγματα χρήσης AC βρίσκουμε στους μεταγλωττιστές GCC (υπό την μορφή GIMPLE) και LANCE [Leupers, 2003] ως εκτελέσιμο κώδικα C χαμηλού επιπέδου Αναπαράσταση ενδιάμεσου κώδικα σε τετράδες (quadruples ή quads) Το βασικό μπλοκ (BB: basic block) (1) Η τετράδα αποτελεί δομή δεδομένων κατάλληλη για χρήση από το μεταγλωττιστή προκειμένου τη διατήρηση της πληροφορίας κώδικα AC Οι τετράδες έχουν ένα-προς-ένα αντιστοιχία με τις εντολές AC και αποτελούνται από τα εξής επιμέρους στοιχεία: op για τον τελεστή, arg 1, arg 2 για τα δύο έντελα ανάγνωσης, και result για το έντελο εγγραφής στο οποίο γράφεται τυχόν αποτέλεσμα της εντολής. Ενα ή περισσότερα από τα πεδία arg 1, arg 2, result μπορεί να είναι κενά Τα στοιχεία μιας τετράδας υλοποιούνται ως μέλη μιας struct της C Για παράδειγμα η εντολή z = x + y; αντιπροσωπεύεται από την τετράδα ( +, x, y, z) Για το παράδειγμα: t1 = b - c; t2 = a * t1; t3 = a + t2; t4 = t1 * d; t5 = t3 + t4; op arg 1 arg 2 result 0 subtract b c t1 1 multiply a t1 t2 2 add a t2 t3 3 multiply t1 d t4 4 add t3 t4 t5 Ενα βασικό μπλοκ αποτελεί μία ακολουθία διαδοχικών εντολών με ένα σημείο εισόδου και ένα σημείο εξόδου με τις ακόλουθες ιδιότητες: Η ροή ελέγχου μπορεί να μεταφερθεί στο βασικό μπλοκ μόνο διαμέσου της 1ης εντολής του Η ροή ελέγχου εξέρχεται από το βασικό μπλοκ από την τελευταία εντολή του η οποία είναι η μόνη που επιτρέπεται να μεταφέρει τη ροή εκτέλεσης του προγράμματος σε μη διαδοχική διεύθυνση Το βασικό μπλοκ αποτελεί τη ϑεμελιώδη μονάδα μεταγλώττισης στην οποία εφαρμόζονται βασικές βελτιστοποιήσεις όπως η επιλογή εντολών (instruction selection) και ο καταμερισμός καταχωρητών (register allocation)
6 Το βασικό μπλοκ (BB: Basic Block) (2) Το βασικό μπλοκ (BB: basic block) (3) Παράδειγμα 1 data = inp; 2 count = 0; 3 4 while (data!= 0) 5 { 6 count += (data & 0x1); 7 data = data >> 0x1; 8 } 1 L1: 2 data = inp; 3 count = 0; 4 goto L2; 5 6 L2: 7 temp = data & 0x1; 8 count = count + temp; 9 data = data >> 0x1; 10 if (data!= 0) goto L2; L_EXI: Η έννοια του βασικού μπλοκ χρησιμοποιείται από το επίπεδο της IR μέχρι και τον τελικό κώδικα (assembly) για τη στοχευόμενη μηχανή Η ροή ελέγχου μεταφέρεται στο BB από προηγηθέντα (predecessor) BB και μεταφέρεται σε διάδοχα (successor) BB Σημεία αλλαγής ροής ελέγχου Άμεσες ή έμμεσες, διακλαδώσεις (branches) και άλματα (jumps), με ή χωρίς συνθήκη Κλήση υποπρογράμματος Εξαιρέσεις (exceptions) Αλγόριθμος εξαγωγής βασικών μπλοκ 1 Εστω το πρόγραμμα σε μορφή AC 2 Για κάθε εντολή 3 Εισαγωγή επισήμανσης ορίου BB, αν η εντολή μεταφέρει ή δέχεται τον έλεγχο από άλλο σημείο του προγράμματος 4 Διαχωρισμός των BB Γράφος Εξάρτησης Δεδομένων (DDG: Data-Dependence Graph) Το BB DAG Ενας Γράφος Εξάρτησης Δεδομένων (DDG) είναι ο κατευθυνόμενος ακυκλικός γράφος (DAG) που αντιπροσωπεύει τις εξαρτήσεις δεδομένων σε μια ακολουθία διαδοχικών εντολών Τύποι εξάρτησης δεδομένων Εξάρτηση ροής (flow dependence): απαίτηση ανάγνωσης μετά από εγγραφή (RAW: Read-After-Write), πρόκειται για πραγματική εξάρτηση λόγω της φύσης της αλγοριθμικής ροής Αντιεξάρτηση (anti-dependence): απαίτηση εγγραφής σε μια ϑέση αποθήκευσης μετά από ανάγνωση από αυτή. Εάν η εγγραφή προηγηθεί της ανάγνωσης, η ανάγνωση ϑα λάβει λανθασμένα δεδομένα. Προκαλείται από αναδιοργάνωση του κώδικα Εξάρτηση εξόδου (output dependence): απαίτηση εγγραφής μετά από εγγραφή στην ίδια ϑέση αποθήκευσης Πολλές φορές αντ αυτού χρησιμοποιείται ο όρος Γράφος Ροής Δεδομένων (DG: Data low Graph) Definition (DAG βασικού μπλοκ) Καλούνται G(V, E) οι κατευθυνόμενοι ακυκλικοί γράφοι (DAGs) που αναπαριστούν τη ροή και τις εξαρτήσεις δεδομένων σε κάθε βασικό μπλοκ οι κόμβοι V αναπαριστούν στοιχειώδεις λειτουργίες και οι ακμές E αναπαριστούν εξαρτήσεις δεδομένων. Κάθε γράφος G αντιστοιχείται σε έναν γράφο G + (V V +, E E + ), ο οποίος περιλαμβάνει επιπρόσθετους κόμβους V + και επιπρόσθετες ακμές E +. Οι επιπρόσθετοι κόμβοι V + αναπαριστούν μεταβλητές (έντελα/ορίσματα) εισόδου και εξόδου από το βασικό μπλοκ. Οι επιπρόσθετες ακμές E + συνδέουν κόμβους του V + με κόμβους του V, και κόμβους V με τους V +.
7 Γράφος Ροής Ελέγχου (CG: Control low Graph) Γράφος Ροής Ελέγχου-Δεδομένων (CDG: Control-Data low Graph) Ενας Γράφος Ροής Ελέγχου (CG) αποτελεί μια αναπαράσταση όλων των διαδρομών τα οποία μπορεί να διαβεί η ροή εκτέλεσης του προγράμματος. Οι κορυφές του CG αποτελούν βασικά μπλοκ και οι ακμές του αντιπροσωπεύουν άλματα στη ροή ελέγχου Ενα CG αντιπροσωπεύει ένα υποπρόγραμμα (π.χ. function της C) και έτσι ένα πηγαίο πρόγραμμα αναπαρίσταται από ένα σύνολο από CG Ενα CG μπορεί να αποτελεί κυκλικό γράφο Ειδική σημασία στη λειτουργία αλγορίθμων ανάλυσης ροής ελέγχου και δεδομένων σε CG έχουν το μπλοκ εισόδου και το μπλοκ εξόδου του, τα οποία μπορεί και να είναι εικονικά (source, sink blocks) Η IR είναι οργανώσιμη σε μορφή Γράφου Ροής Ελέγχου-Δεδομένων (CDG) για κάθε συνάρτηση του πηγαίου προγράμματος Ο CDG είναι ένας ιεραρχικός γράφος δύο επιπέδων Ανώτερο επίπεδο: CG που έχει ως κορυφές τα BB της συνάρτησης και ως ακμές τις εξαρτήσεις ελέγχου μεταξύ τους Κατώτερο επίπεδο: BB που αντιπροσωπεύεται από τον DDG του Η οργάνωση της IR σε CDG χρησιμοποιείται ιδιαίτερα από τα εργαλεία σύνθεσης υψηλού επιπέδου (HLS: High-Level Synthesis) Γενικά ο CDG μπορεί να οριστεί ως η ΔΙΑΤΕΤΑΓΜΕΝΗ ΤΡΙΑΔΑ (3-tuple) CDG(V, E, D) όπου: V το σύνολο των λειτουργιών, σταθερών τιμών και μεταβλητών ή ορισμάτων εισόδου στο τμήμα του προγράμματος, E οι σχέσεις ανάμεσα σε κορυφές του συνόλου V, και D οι έμφυτες χρονικές καθυστερήσεις (π.χ. σε ns ή σε κύκλους μηχανής) για την ολοκλήρωση των λειτουργιών V Ολοκληρωμένο παράδειγμα: Από την C στο CDG (1) Ολοκληρωμένο παράδειγμα: Από την C στο CDG (2) Συνάρτηση υπολογισμού απόλυτης τιμής σε C int iabs(int a) { int temp; } if (a < 0) temp = -a; else temp = a; return temp; Κώδικας AC για τη συνάρτηση iabs iabs: v2 = a; v3 = 0; v4 = (v2 < v3); if (v4) goto L1; v5 = v2; goto L2; L1: v5 = -v2; L2: return v5; Το CDG της iabs BB 1 BB 2 BB 3 v5 = v2; goto L2; v3 = 0; iabs: v2 = a; v4 = (v2 < b3); if (v4) goto L1; BB 0 L1: v5 = -v2; BB 4 L2: return v5; BB 5
8 Η SUIvm IR Ενδιάμεση αναπαράσταση με χρήση Στατικής Απλής Ανάθεσης (SSA: Static Single Assignment) Χαμηλού επιπέδου (τύπου AC) IR του μεταγλωττιστή Machine-SUI Ενσωματώνει την πληροφορία της εφαρμογής Πριν τον καταμερισμό καταχωρητών Πριν τον καταμερισμό πλαισίου στη στοίβα (stack allocation) Εντολή Μορφή κώδικα τριών διευθύνσεων ADD, SUB, MUL, DIV, REM, LSL, rdst = rsrc1 binop op2; LSR, ASR, AND, IOR, XOR, MIN, MAX NEG, NO, ABS rdst = unop rsrc1; SEQ, SNE, SL, SLE rdst = rsrc1 condop op2; RE return [rsrc]; CV (castop)rsrc; LOD rdst = *addr; SR *addr = rsrc; BALSE, BRUE, BEQ, BNE, BLE, BL, BGE, BG if (src1 condop op2) goto target; JMP goto target; CAL [rdst =] func-name ({arg1}? {, argn}* Η Στατική Απλή Ανάθεση (SSA) [Cytron, 1991] αποτελεί ΙΔΙΟΤΗΤΑ μιας IR σε σχέση με το πως επιλέγουμε να χειριστούμε τις μεταβλητές Definition (Ιδιότητα της στατικής απλής ανάθεσης) Ενα πρόγραμμα βρίσκεται σε μορφή SSA αν κάθε μεταβλητή ορίζεται στατικά το πολύ μία φορά, δηλ. δεν υπάρχουν δύο τοποθεσίες στο πρόγραμμα οι οποίες να αναθέτουν στην ίδια μεταβλητή AC p = a + b; q = p - c; p = q * d; p = e - p2; q = p + q; SSA-AC p1 = a + b; q1 = p1 - c; p2 = q1 * d; p3 = e - p2; q2 = p3 + q1; Η συνάρτηση φ (1) Η συνάρτηση φ (2) Η ίδια μεταβλητή μπορεί να οριστεί μέσω δύο ή παραπάνω μονοπατιών ροής ελέγχου σε ένα πρόγραμμα Εστω το τμήμα κώδικα if (flag) x = -1; else x = 1; y = x * a; Στη μορφή SSA χρησιμοποιούμε διαφορετικά ονόματα για τη μεταβλητή x στα δύο μονοπάτια Η συνάρτηση φ (phi) επανασυνδέει τις x1, x2 στη x3 έχοντας την τιμή της μίας ή της άλλης ανάλογα με την τιμή της συνθήκης flag Ετσι έχουμε if (flag) x1 = -1; else x2 = 1; x3 = phi(x1, x2); y = x3 * a; Η συνάρτηση φ φέρει τόσα ορίσματα όσα είναι και τα βασικά μπλοκ τα οποία είναι προηγηθέντα (predecessors) του BB (οδηγούν τη ροή ελέγχου) στο οποίο πρόκειται να χρησιμοποιηθεί (δηλ. όσες είναι οι εισερχόμενες ακμές) Κάθε όρισμα συνδέεται με μοναδικό τρόπο με ένα και μόνο από τα προηγηθέντα BB Το αποτέλεσμα μιας συνάρτησης φ είναι εκείνη η εκδοχή της μεταβλητής η οποία προέρχεται από το μονοπάτι ροής ελέγχου το οποίο τελικά οδηγεί κατά την εκτέλεση του προγράμματος στο εν λόγω BB Οι συναρτήσεις φ τοποθετούνται πριν από τις πραγματικές εντολές σε ένα BB και ϑεωρείται ότι υπολογίζονται ταυτόχρονα
9 Απλή μέθοδος για την κατασκευή της μορφής SSA Παράδειγμα πηγαίου προγράμματος και το AC IR του Αλγόριθμος δύο φάσεων [Aycock and Horspool, 2000] για την απλή γέννηση SSA 1 Εισαγωγή φ-συναρτήσεων για κάθε μεταβλητή σε κάθε BB με αριθμό ορισμάτων ίσο με τον αριθμό των εισερχόμενων ακμών 2 Φάση ελαχιστοποίησης των φ-συναρτήσεων 2.1 Διαγραφή των φ-συναρτήσεων της μορφής: V i φ(v i, V i,..., V i ) 2.2 Διαγραφή των φ-συναρτήσεων της μορφής V i φ(v x1, V x2,..., V xk ), όπου x 1, x 2,..., x k {i, j} 3 Απαρίθμηση τιμών (value numbering) για τη δεικτοδότηση κάθε νέου ορισμού μιας μεταβλητής (επαναλαμβάνεται) Πηγαίο πρόγραμμα i = 123; j = i * j; do { PRIN(j); if (j > 5) { i = i + 1; } else { break; } } while (i <= 234); i = i + 1 i = 123 j = i * j PRIN(j) t = j > 5 t = i <= 234 Εξαγωγή SSA από πηγαίο πρόγραμμα: Βήμα 1 Εξαγωγή SSA από πηγαίο πρόγραμμα: Βήμα 2 IR ; ; PRIN(j); t = j > 5; i = i + 1; ; t = i <= 234; i = i + 1 PRIN(j) t = j > 5 t = i <= 234 IR ; ; i2 = phi(i1, i6); j2 = phi(j1, j5); PRIN(j2); t = j2 > 5; i = i + 1; ; t = i <= 234; i = i + 1 i2 = phi(i1, i6) j2 = phi(j1, j5) PRIN(j2) t = j2 > 5 t = i <= 234
10 Εξαγωγή SSA από πηγαίο πρόγραμμα: Βήμα 3 Εξαγωγή SSA από πηγαίο πρόγραμμα: Βήμα 4 IR ; ; i2 = phi(i1, i6); j2 = phi(j1, j5); PRIN(j2); t = j2 > 5; i3 = phi(i2); j3 = phi(j2); i4 = i3 + 1; ; t = i <= 234; i3 = phi(i2) j3 = phi(j2) i4 = i3 + 1 i2 = phi(i1, i6) j2 = phi(j1, j5) PRIN(j2) t = j2 > 5 t = i <= 234 IR ; ; i2 = phi(i1, i6); j2 = phi(j1, j5); PRIN(j2); t = j2 > 5; i3 = phi(i2); j3 = phi(j2); i4 = i3 + 1; i5 = phi(i2); j4 = phi(j2); ; t = i <= 234; i3 = phi(i2) j3 = phi(j2) i4 = i3 + 1 i2 = phi(i1, i6) j2 = phi(j1, j5) PRIN(j2) t = j2 > 5 t = i <= 234 i5 = phi(i2) j4 = phi(j2) Εξαγωγή SSA από πηγαίο πρόγραμμα: Βήμα 5 Εξαγωγή SSA από πηγαίο πρόγραμμα: Βήμα 6 IR ; ; i2 = phi(i1, i6); j2 = phi(j1, j5); PRIN(j2); t = j2 > 5; i3 = phi(i2); j3 = phi(j2); i4 = i3 + 1; i5 = phi(i2); j4 = phi(j2); ; i6 = phi(i4); j5 = phi(j3); t = i6 <= 234; i3 = phi(i2) j3 = phi(j2) i4 = i3 + 1 i2 = phi(i1, i6) j2 = phi(j1, j5) PRIN(j2) t = j2 > 5 i6 = phi(i4) j5 = phi(j3) t = i6 <= 234 i5 = phi(i2) j4 = phi(j2) IR ; ; i2 = phi(i1, i6); j2 = phi(j1, j5); PRIN(j2); t = j2 > 5; i3 = phi(i2); j3 = phi(j2); i4 = i3 + 1; i5 = phi(i2); j4 = phi(j2); ; i6 = phi(i4); j5 = phi(j3); t = i6 <= 234; i7 = phi(i6, i5); j6 = phi(j5, j4); i3 = phi(i2) j3 = phi(j2) i4 = i3 + 1 i2 = phi(i1, i6) j2 = phi(j1, j5) PRIN(j2) t = j2 > 5 i6 = phi(i4) j5 = phi(j3) t = i6 <= 234 i5 = phi(i2) j4 = phi(j2) i7 = phi(i6, i5) j6 = phi(j5, j4)
11 Εξαγωγή SSA από πηγαίο πρόγραμμα: Βήμα 7 Εξαγωγή SSA από πηγαίο πρόγραμμα: Βήμα 8 Εξουδετέρωση περιττών εκδοχών (versions) της μεταβλητής i i 2 φ(i 1, i 6 ) i 3 φ(i 2 ) i 5 φ(i 2 ) i 6 φ(i 4 ) i 7 φ(i 6, i 5 ) i 3 i 2 i 5 i 2 i 6 i 4 = { i2 φ(i 1, i 4 ) i 7 φ(i 4, i 2 ) j3 = phi(j2) i4 = i2 + 1 i2 = phi(i1, i4) j2 = phi(j1, j5) PRIN(j2) t = j2 > 5 j5 = phi(j3) t = i4 <= 234 j4 = phi(j2) Εξουδετέρωση περιττών εκδοχών (versions) της μεταβλητής j j 2 φ(j 1, j 5 ) j 3 φ(j 2 ) j 4 φ(j 2 ) j 5 φ(j 3 ) j 6 φ(i 6, i 5 ) j 2 φ(j 1, j 2 ) [ j 3 j 2 j 4 j 2 j 5 j 4 j 3 = j 2 j 1 ] = none i4 = i2 + 1 i2 = phi(i1, i4) PRIN(j1) t = j1 > 5 t = i4 <= 234 i7 = phi(i4, i2) j6 = phi(j5, j4) i7 = phi(i4, i2) Κίνητρα για την χρήση SSA Αναφορές του μαθήματος I Η μορφή SSA προτιμάται στις μοντέρνες σχεδιάσεις μεταγλωττιστών (GCC 4.0, LLVM 2.5, Machine-SUI 2, libfirm ) για τους εξής λόγους: Οι αναλύσεις ροής δεδομένων (data flow analyses) είναι περισσότερο αποδοτικές Διευκολύνεται η εφαρμογή συγκεκριμένων τύπων βελτιστοποιήσεων Ορισμένες αναλύσεις και βελτιστοποιήσεις όπως η εξουδετέρωση κοινής υποεκφράσεως (CSE) είναι έμφυτες στην αναπαράσταση (πραγματοποιούνται κατά την εξαγωγή της SSA) Οι αλυσίδες χρήσης-ορισμού (def-use chains) είναι εμφανείς Οι αλυσίδες ορισμού-χρήσης (use-def chains) είναι ευκολότερο να αναπαρασταθούν A. V. Aho, R. Sethi, and J. D. Ullman, Μεταγλωττιστές: Αρχές, Τεχνικές και Εργαλεία, με την επιμέλεια των: Άγγελος Σπ. Βώρος και Νικόλαος Σπ. Βώρος και Κων/νος Γ. Μασσέλος, κεφάλαια 6, 6.1.1, 6.2, 6.2.1, 6.2.4, 8.4, 9.6.1, Εκδόσεις Νέων Τεχνολογιών, Website for the English version: R. Leupers, O. Whalen, M. Hahenauer,. Kogel, and P. Marwedel, An executable intermediate representation for retargetable compilation and high-level code optimization, in Proceedings of the hird International Workshop on Systems, Architectures, Modeling, and Simulation (SAMOS 2003), Samos, Greece, July , pp R. Cytron, J. errante, B. K. Rosen, M. N. Wegman, and. K. Zadeck, Efficiently computing static single assignment form and the control dependence graph, ACM ransactions on Programming Languages and Systems, vol. 13, no. 4, pp , October 1991.
12 Αναφορές του μαθήματος II J. Aycock and N. Horspool, Simple generation of static single assignment form, in Proceedings of the 9th International Conference in Compiler Construction, Berlin, Germany, March 2000, pp Machine-SUI research compiler. [Online]. Available: he GNU compiler collection homepage. [Online]. Available: LANCE C compiler. [Online]. Available:
Μεταγλωττιστές ΙΙ. nkavv@uop.gr. Γέννηση ενδιάμεσης αναπαράστασης. 10 Νοεμβρίου 2010. Νικόλαος Καββαδίας nkavv@uop.gr Μεταγλωττιστές ΙΙ
Μεταγλωττιστές ΙΙ Γέννηση ενδιάμεσης αναπαράστασης Νικόλαος Καββαδίας nkavv@uop.gr 10 Νοεμβρίου 2010 Η έννοια της ενδιάμεσης αναπαράστασης Ενδιάμεση αναπαράσταση (IR: intermediate representation): απλοποιημένη,
Διαβάστε περισσότερα21/11/2005 Διακριτά Μαθηματικά. Γραφήματα ΒΑΣΙΚΗ ΟΡΟΛΟΓΙΑ : ΜΟΝΟΠΑΤΙΑ ΚΑΙ ΚΥΚΛΟΙ Δ Ι. Γεώργιος Βούρος Πανεπιστήμιο Αιγαίου
Γραφήματα ΒΑΣΙΚΗ ΟΡΟΛΟΓΙΑ : ΜΟΝΟΠΑΤΙΑ ΚΑΙ ΚΥΚΛΟΙ A Ε B Ζ Η Γ K Θ Δ Ι Ορισμός Ένα (μη κατευθυνόμενο) γράφημα (non directed graph) Γ, είναι μία δυάδα από σύνολα Ε και V και συμβολίζεται με Γ=(Ε,V). Το σύνολο
Διαβάστε περισσότεραΜεταγλωττιστές ΙΙ. nkavv@uop.gr. Καταμερισμός καταχωρητών. Νικόλαος Καββαδίας nkavv@uop.gr Μεταγλωττιστές ΙΙ
Μεταγλωττιστές ΙΙ Καταμερισμός καταχωρητών Νικόλαος Καββαδίας nkavv@uop.gr 01 Δεκεμβρίου 2010 Γενικά για τον καταμερισμό καταχωρητών Καταμερισμός καταχωρητών (register allocation): βελτιστοποίηση μεταγλωττιστή
Διαβάστε περισσότεραΜεταγλωττιστές ΙΙ. Επιλογή κώδικα. 24 Νοεμβρίου Νικόλαος Καββαδίας Μεταγλωττιστές ΙΙ
Μεταγλωττιστές ΙΙ Επιλογή κώδικα Νικόλαος Καββαδίας nkavv@uop.gr 24 Νοεμβρίου 2010 Ο γεννήτορας κώδικα Επιθυμητές ιδιότητες του γεννήτορα κώδικα (code generator) Το παραγόμενο πρόγραμμα χαμηλού επιπέδου
Διαβάστε περισσότεραΠροηγμένα Θέματα Θεωρητικής Πληροφορικής
Προηγμένα Θέματα Θεωρητικής Πληροφορικής Επιλογή κώδικα Νικόλαος Καββαδίας nkavv@uop.gr 24 Μαρτίου 2010 Σημαντικά ζητήματα στη γέννηση κώδικα (1) Επιθυμητές ιδιότητες του γεννήτορα κώδικα (code generator)
Διαβάστε περισσότεραΑποδεικτικές Διαδικασίες και Μαθηματική Επαγωγή.
Αποδεικτικές Διαδικασίες και Μαθηματική Επαγωγή. Mαθηματικό σύστημα Ένα μαθηματικό σύστημα αποτελείται από αξιώματα, ορισμούς, μη καθορισμένες έννοιες και θεωρήματα. Η Ευκλείδειος γεωμετρία αποτελεί ένα
Διαβάστε περισσότεραΟι γέφυρες του ποταμού... Pregel (Konigsberg)
Οι γέφυρες του ποταμού... Pregel (Konigsberg) Β Δ Β Δ Γ Γ Κύκλος του Euler (Euler cycle) είναι κύκλος σε γράφημα Γ που περιέχει κάθε κορυφή του γραφήματος, και κάθε ακμή αυτού ακριβώς μία φορά. Για γράφημα
Διαβάστε περισσότεραCSE.UOI : Μεταπτυχιακό Μάθημα
Θέματα Αλγορίθμων Αλγόριθμοι και Εφαρμογές στον Πραγματικό Κόσμο CSE.UOI : Μεταπτυχιακό Μάθημα 10η Ενότητα: Χρονικά Εξελισσόμενες ικτυακές Ροές Σπύρος Κοντογιάννης kntg@cse.ui.gr Τμήμα Μηχανικών Η/Υ &
Διαβάστε περισσότεραΦόρμα Σχεδιασμού Διάλεξης (ημ/α: 17/03/08, έκδοση: 1.0)
1. Κωδικός Μαθήματος: (Εισαγωγή στον Προγραμματισμό) 2. Α/Α Διάλεξης: 1 1. Τίτλος: Εισαγωγή στους υπολογιστές. 2. Μαθησιακοί Στόχοι: Συνοπτική παρουσίαση της εξέλιξης των γλωσσών προγραμματισμού και των
Διαβάστε περισσότεραΔ Ι Α Κ Ρ Ι Τ Α Μ Α Θ Η Μ Α Τ Ι Κ Α. 1η σειρά ασκήσεων
Δ Ι Α Κ Ρ Ι Τ Α Μ Α Θ Η Μ Α Τ Ι Κ Α 1η σειρά ασκήσεων Ονοματεπώνυμο: Αριθμός μητρώου: Ημερομηνία παράδοσης: Μέχρι την Τρίτη 2 Απριλίου 2019 Σημειώστε τις ασκήσεις για τις οποίες έχετε παραδώσει λύση: 1
Διαβάστε περισσότεραΑς υποθέσουμε ότι ο παίκτης Ι διαλέγει πρώτος την τυχαιοποιημένη στρατηγική (x 1, x 2 ), x 1, x2 0,
Οικονομικό Πανεπιστήμιο Αθηνών Τμήμα Στατιστικής Εισαγωγή στην Επιχειρησιακή Ερευνα Εαρινό Εξάμηνο 2015 Μ. Ζαζάνης Πρόβλημα 1. Να διατυπώσετε το παρακάτω παίγνιο μηδενικού αθροίσματος ως πρόβλημα γραμμικού
Διαβάστε περισσότεραΜεταγλωττιστές ΙΙ. nkavv@uop.gr. Χρονοπρογραμματισμός κώδικα και βελτιστοποιήσεις εξαρτημένες από την αρχιτεκτονική
Μεταγλωττιστές ΙΙ Χρονοπρογραμματισμός κώδικα και βελτιστοποιήσεις εξαρτημένες από την αρχιτεκτονική Νικόλαος Καββαδίας nkavv@uop.gr 21 Δεκεμβρίου 2010 Βελτιστοποιήσεις εξαρτημένες από την αρχιτεκτονική
Διαβάστε περισσότεραΠροηγμένα Θέματα Θεωρητικής Πληροφορικής
Προηγμένα Θέματα Θεωρητικής Πληροφορικής Βελτιστοποιήσεις ανεξάρτητες από την αρχιτεκτονική Νικόλαος Καββαδίας nkavv@uop.gr 28 Απριλίου 2010 Η έννοια της βελτιστοποίησης προγράμματος Βελτιστοποίηση προγράμματος
Διαβάστε περισσότεραΓενικά για τον καταμερισμό καταχωρητών. Προηγμένα Θέματα Θεωρητικής Πληροφορικής. Εναλλακτικές προσεγγίσεις στο πρόβλημα του
Γενικά για τον καταμερισμό καταχωρητών Προηγμένα Θέματα Θεωρητικής Πληροφορικής Καταμερισμός καταχωρητών Νικόλαος Καββαδίας nkavv@uop.gr 1 Απριλίου 010 Καταμερισμός καταχωρητών (register allocation): βελτιστοποίηση
Διαβάστε περισσότεραΗ έννοια της βελτιστοποίησης προγράμματος. Προηγμένα Θέματα Θεωρητικής Πληροφορικής
Η έννοια της βελτιστοποίησης προγράμματος Προηγμένα Θέματα Θεωρητικής Πληροφορικής Βελτιστοποιήσεις ανεξάρτητες από την αρχιτεκτονική Νικόλαος Καββαδίας nkavv@uop.gr 28 Απριλίου 2010 Βελτιστοποίηση προγράμματος
Διαβάστε περισσότεραΜεταγλωττιστές ΙΙ. Βελτιστοποιήσεις ανεξάρτητες από την αρχιτεκτονική. Νικόλαος Καββαδίας Μεταγλωττιστές ΙΙ
Μεταγλωττιστές ΙΙ Βελτιστοποιήσεις ανεξάρτητες από την αρχιτεκτονική Νικόλαος Καββαδίας nkavv@uop.gr 08 Δεκεμβρίου 2010 Η έννοια της βελτιστοποίησης προγράμματος Βελτιστοποίηση προγράμματος (program optimization):
Διαβάστε περισσότερα{ i f i == 0 and p > 0
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ Σχεδίαση και Ανάλυση Αλγορίθμων Διδάσκων: Ε. Μαρκάκης, Φθινοπωρινό εξάμηνο 014-015 Λύσεις 1ης Σειράς Ασκήσεων
Διαβάστε περισσότεραΒελτιστοποιήσεις για την εκμετάλλευση της παραλληλίας και ενίσχυση της τοπικότητας. Προηγμένα Θέματα Θεωρητικής Πληροφορικής
Βελτιστοποιήσεις για την εκμετάλλευση της παραλληλίας και ενίσχυση της τοπικότητας Προηγμένα Θέματα Θεωρητικής Πληροφορικής Βελτιστοποιήσεις για την εκμετάλλευση της παραλληλίας και ενίσχυση της τοπικότητας
Διαβάστε περισσότεραΠροηγμένα Θέματα Θεωρητικής Πληροφορικής
Προηγμένα Θέματα Θεωρητικής Πληροφορικής Βελτιστοποιήσεις για την εκμετάλλευση της παραλληλίας και ενίσχυση της τοπικότητας (Ι) Νικόλαος Καββαδίας nkavv@uop.gr 19 Μαΐου 2010 Βελτιστοποιήσεις για την εκμετάλλευση
Διαβάστε περισσότεραΝικόλαος Καββαδίας Μεταγλωττιστές ΙΙ
Μεταγλωττιστές ΙΙ Η οργάνωση του μεταγλωττιστή Νικόλαος Καββαδίας nkavv@uop.gr 03 Νοεμβρίου 2010 Αντικείμενο του μαθήματος CST325: Μεταγλωττιστές ΙΙ (1) Επιμέρους στόχοι του μαθήματος Παρουσίαση ϑεμάτων
Διαβάστε περισσότεραΜεταγλωττιστές ΙΙ. nkavv@uop.gr. 26 Ιανουαρίου 2011. Νικόλαος Καββαδίας nkavv@uop.gr Μεταγλωττιστές ΙΙ
Μεταγλωττιστές ΙΙ Ανασκόπηση του μαθήματος και ϑέματα πρακτικής εξάσκησης Νικόλαος Καββαδίας nkavv@uop.gr 26 Ιανουαρίου 2011 Σκιαγράφηση της διάλεξης Παραλειπόμενα Αναδρομή στο περιεχόμενο του μαθήματος
Διαβάστε περισσότεραΣυναρτήσεις. Σημερινό μάθημα
Συναρτήσεις Σημερινό μάθημα C++ Συναρτήσεις Δήλωση συνάρτησης Σύνταξη συνάρτησης Πρότυπο συνάρτησης & συνάρτηση Αλληλο καλούμενες συναρτήσεις συναρτήσεις μαθηματικών Παράμετροι συναρτήσεων Τοπικές μεταβλητές
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Εαρινό Εξάμηνο
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ231: Δομές Δεδομένων και Αλγόριθμοι Εαρινό Εξάμηνο 2017-2018 Φροντιστήριο 3 1. Εστω η στοίβα S και ο παρακάτω αλγόριθμος επεξεργασίας της. Να καταγράψετε την κατάσταση
Διαβάστε περισσότεραPointers. Σημερινό Μάθημα! Χρήση pointer Τελεστής * Τελεστής & Γενικοί δείκτες Ανάκληση Δέσμευση μνήμης new / delete Pointer σε αντικείμενο 2
Pointers 1 Σημερινό Μάθημα! Χρήση pointer Τελεστής * Τελεστής & Γενικοί δείκτες Ανάκληση Δέσμευση μνήμης new / delete Pointer σε αντικείμενο 2 1 Μνήμη μεταβλητών Κάθε μεταβλητή έχει διεύθυνση Δεν χρειάζεται
Διαβάστε περισσότεραΠροηγμένα Θέματα Θεωρητικής Πληροφορικής
Προηγμένα Θέματα Θεωρητικής Πληροφορικής Ανασκόπηση του μαθήματος - Γέννηση τελικού κώδικα για RISC επεξεργαστές Νικόλαος Καββαδίας nkavv@uop.gr 02 Ιουνίου 2010 Σκιαγράφηση της διάλεξης Σύνοψη του μαθήματος
Διαβάστε περισσότεραΣχέσεις και ιδιότητές τους
Σχέσεις και ιδιότητές τους Διμελής (binary) σχέση Σ από σύνολο Χ σε σύνολο Υ είναι ένα υποσύνολο του καρτεσιανού γινομένου Χ Υ. Αν (χ,ψ) Σ, λέμε ότι το χ σχετίζεται με το ψ και σημειώνουμε χσψ. Στην περίπτωση
Διαβάστε περισσότεραΤρίτη, 05 Ιουνίου 2001 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Τρίτη, 05 Ιουνίου 2001 ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Γ ΛΥΚΕΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ 1 Α. Να µεταφέρετε στο τετράδιό σας και να συµπληρώσετε τον παρακάτω πίνακα αλήθειας δύο προτάσεων
Διαβάστε περισσότεραΣκιαγράφηση της διάλεξης. Προηγμένα Θέματα Θεωρητικής Πληροφορικής.
Σκιαγράφηση της διάλεξης Προηγμένα Θέματα Θεωρητικής Πληροφορικής Ανασκόπηση του μαθήματος - Γέννηση τελικού κώδικα για RISC επεξεργαστές Νικόλαος Καββαδίας nkavv@uop.gr Σύνοψη του μαθήματος Ενδεικτικά
Διαβάστε περισσότεραΜεταγλωττιστές ΙΙ. Βελτιστοποιήσεις για την εκμετάλλευση της παραλληλίας και ενίσχυση της τοπικότητας
Μεταγλωττιστές ΙΙ Βελτιστοποιήσεις για την εκμετάλλευση της παραλληλίας και ενίσχυση της τοπικότητας Νικόλαος Καββαδίας nkavv@uop.gr 22 Δεκεμβρίου 2010 Βελτιστοποιήσεις για την εκμετάλλευση της παραλληλίας
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Εαρινό Εξάμηνο
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ31: Δομές Δεδομένων και Αλγόριθμοι Εαρινό Εξάμηνο 017-018 Φροντιστήριο 5 1. Δικαιολογήστε όλες τις απαντήσεις σας. i. Δώστε τις 3 βασικές ιδιότητες ενός AVL δένδρου.
Διαβάστε περισσότεραΣΤΟ ΦΑΡΜΑΚΕΙΟ. Με την πιστοποίηση του έχει πρόσβαση στο περιβάλλον του φαρμακείου που παρέχει η εφαρμογή.
ΣΤΟ ΦΑΡΜΑΚΕΙΟ Ο ασθενής έχοντας μαζί του το βιβλιάριο υγείας του και την τυπωμένη συνταγή από τον ιατρό, η οποία αναγράφει τον μοναδικό κωδικό της, πάει στο φαρμακείο. Το φαρμακείο αφού ταυτοποιήσει το
Διαβάστε περισσότεραΕξαναγκασμένες ταλαντώσεις, Ιδιοτιμές με πολλαπλότητα, Εκθετικά πινάκων. 9 Απριλίου 2013, Βόλος
ιαφορικές Εξισώσεις Εξαναγκασμένες ταλαντώσεις, Ιδιοτιμές με πολλαπλότητα, Ατελείς ιδιοτιμές Εκθετικά πινάκων Μανόλης Βάβαλης Τμήμα Μηχανικών Η/Υ Τηλεπικοινωνιών και ικτύων Πανεπιστήμιο Θεσσαλίας 9 Απριλίου
Διαβάστε περισσότερα8 Βελτιστοποιήσεις για την ανάδειξη της παραλληλίας
Αντικείμενο του μαθήματος Προηγμένα Θέματα Θεωρητικής Πληροφορικής Προηγμένα Θέματα Θεωρητικής Πληροφορικής Η οργάνωση του μεταγλωττιστή Νικόλαος Καββαδίας nkavv@uop.gr 10 Μαρτίου 2010 Επιμέρους στόχοι
Διαβάστε περισσότεραΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ Γ ΤΑΞΗ
ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ Σ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΔΕΥΤΕΡΑ 12 ΙΟΥΝΙΟΥ 2000 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΗΡΕΣΙΩΝ): ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ
Διαβάστε περισσότεραΠροηγμένα Θέματα Θεωρητικής Πληροφορικής
Προηγμένα Θέματα Θεωρητικής Πληροφορικής Η οργάνωση του μεταγλωττιστή Νικόλαος Καββαδίας nkavv@uop.gr 10 Μαρτίου 2010 Αντικείμενο του μαθήματος Προηγμένα Θέματα Θεωρητικής Πληροφορικής Επιμέρους στόχοι
Διαβάστε περισσότερα5.1 Μετρήσιμες συναρτήσεις
5 Μετρήσιμες συναρτήσεις 5.1 Μετρήσιμες συναρτήσεις Ορισμός 5.1. Εστω (Ω, F ), (E, E) μετρήσιμοι χώροι. Μια συνάρτηση f : Ω E λέγεται F /Eμετρήσιμη αν f 1 (A) F για κάθε A E. (5.1) Συμβολίζουμε το σύνολο
Διαβάστε περισσότεραΣκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. nkavv@uop.gr. Περισσότερα για τα αρθρώματα Αναθέσεις και τελεστές Συντρέχων κώδικας
Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Μοντελοποίηση συνδυαστικών κυκλωμάτων Νικόλαος Καββαδίας nkavv@uop.gr 06 Μαρτίου 2012 Περισσότερα για τα αρθρώματα Αναθέσεις και τελεστές Συντρέχων
Διαβάστε περισσότεραΕπίλυση δικτύων διανομής
ΑστικάΥδραυλικάΈργα Υδρεύσεις Επίλυση δικτύων διανομής Δημήτρης Κουτσογιάννης & Ανδρέας Ευστρατιάδης Τομέας Υδατικών Πόρων Εθνικό Μετσόβιο Πολυτεχνείο Διατύπωση του προβλήματος Δεδομένου ενός δικτύου αγωγών
Διαβάστε περισσότεραΕισαγωγικά. 1.1 Η σ-αλγεβρα ως πληροφορία
1 Εισαγωγικά 1.1 Η σ-αλγεβρα ως πληροφορία Στη θεωρία μέτρου, όταν δουλεύει κανείς σε έναν χώρο X, συνήθως έχει διαλέξει μια αρκετά μεγάλη σ-άλγεβρα στον X έτσι ώστε όλα τα σύνολα που εμφανίζονται να ανήκουν
Διαβάστε περισσότεραΣκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. nkavv@uop.gr. Ανασκόπηση ϑεμάτων παλαιών εξετάσεων του μαθήματος. Περιεχόμενο εξετάσεων
Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Θέματα πρακτικής εξάσκησης Νικόλαος Καββαδίας nkavv@uop.gr 08 Ιουνίου 2011 Ανασκόπηση ϑεμάτων παλαιών εξετάσεων του μαθήματος Εξεταστική περίοδος Ιουνίου-Ιουλίου
Διαβάστε περισσότεραΑναγνώριση Προτύπων. Σήμερα! Λόγος Πιθανοφάνειας Πιθανότητα Λάθους Κόστος Ρίσκο Bayes Ελάχιστη πιθανότητα λάθους για πολλές κλάσεις
Αναγνώριση Προτύπων Σήμερα! Λόγος Πιθανοφάνειας Πιθανότητα Λάθους Πιθανότητα Λάθους Κόστος Ρίσκο Bayes Ελάχιστη πιθανότητα λάθους για πολλές κλάσεις 1 Λόγος Πιθανοφάνειας Ας υποθέσουμε ότι θέλουμε να ταξινομήσουμε
Διαβάστε περισσότεραΤαξινόμηση των μοντέλων διασποράς ατμοσφαιρικών ρύπων βασισμένη σε μαθηματικά κριτήρια.
ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ Ταξινόμηη των μοντέλων διαποράς ατμοφαιρικών ρύπων βαιμένη ε μαθηματικά κριτήρια. Μοντέλο Ελεριανά μοντέλα (Elerian) Λαγκρατζιανά μοντέλα (Lagrangian) Επιπρόθετος διαχωριμός Μοντέλα
Διαβάστε περισσότεραΣκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Γενικά χαρακτηριστικά του επεξεργαστή MU0. nkavv@uop.gr. Προγραμματιζόμενοι επεξεργαστές
Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Προγραμματιζόμενοι επεξεργαστές Νικόλαος Καββαδίας nkavv@uop.gr Προγραμματιζόμενοι επεξεργαστές Ρεαλιστικό παράδειγμα: ο επεξεργαστής MU0 (MicroProcessor
Διαβάστε περισσότερα«ΔΙΑΚΡΙΤΑ ΜΑΘΗΜΑΤΙΚΑ»
HY 118α «ΔΙΚΡΙΤ ΜΘΗΜΤΙΚ» ΣΚΗΣΕΙΣ ΠΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΙΣΤΩΝ εώργιος Φρ. εωργακόπουλος ΜΕΡΟΣ (1) ασικά στοιχεία της θεωρίας συνόλων. Π. ΚΡΗΤΗΣ ΤΜ. ΕΠ. ΥΠΟΛΟΙΣΤΩΝ «ΔΙΚΡΙΤ ΜΘΗΜΤΙΚ». Φ. εωργακόπουλος
Διαβάστε περισσότεραΣυναρτήσεις ΙΙ. Σημερινό μάθημα
Συναρτήσεις ΙΙ 1 Σημερινό μάθημα Εμβέλεια Εμφωλίαση Τύπος αποθήκευσης Συναρτήσεις ως παράμετροι Πέρασμα με τιμή Πολλαπλά return Προκαθορισμένοι ρ Παράμετροι ρ Υπερφόρτωση συναρτήσεων Inline συναρτήσεις
Διαβάστε περισσότεραΠροηγμένα Θέματα Θεωρητικής Πληροφορικής
Προηγμένα Θέματα Θεωρητικής Πληροφορικής Βελτιστοποιήσεις για την εκμετάλλευση της παραλληλίας και ενίσχυση της τοπικότητας (ΙΙ) Νικόλαος Καββαδίας nkavv@uop.gr 26 Μαΐου 2010 Μετασχηματισμοί βρόχου (loop
Διαβάστε περισσότεραΤο κράτος είναι φτιαγμένο για τον άνθρωπο και όχι ο άνθρωπος για το κράτος. A. Einstein Πηγή:
Ας πούμε και κάτι για τις δύσκολες μέρες που έρχονται Το κράτος είναι φτιαγμένο για τον άνθρωπο και όχι ο άνθρωπος για το κράτος. A. Einstein 1879-1955 Πηγή: http://www.cognosco.gr/gnwmika/ 1 ΚΥΚΛΙΚΟΣ
Διαβάστε περισσότεραΣυγκέντρωση Κίνησης. 6.1. Εισαγωγή. 6.2. Στατική Συγκέντρωση Κίνησης
Συγκέντρωση Κίνησης 6.1. Εισαγωγή Σε ένα οπτικό WDM δίκτυο, οι κόμβοι κορμού επικοινωνούν μεταξύ τους και ανταλλάσουν πληροφορία μέσω των lightpaths. Ένα WDM δίκτυο κορμού είναι υπεύθυνο για την εγκατάσταση
Διαβάστε περισσότεραΣΥΝΟΛΑ (προσέξτε τα κοινά χαρακτηριστικά των παρακάτω προτάσεων) Οι άνθρωποι που σπουδάζουν ΤΠ&ΕΣ και βρίσκονται στην αίθουσα
ΣΥΝΟΛΑ (προσέξτε τα κοινά χαρακτηριστικά των παρακάτω προτάσεων) Οι άνθρωποι που σπουδάζουν ΤΠ&ΕΣ και βρίσκονται στην αίθουσα Τα βιβλία διακριτών μαθηματικών του Γ.Β. Η/Υ με επεξεργαστή Pentium και χωρητικότητα
Διαβάστε περισσότεραΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ Σχεδίαση Λογικών Κυκλωμάτων
ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ Σχεδίαση Λογικών Κυκλωμάτων Γιάννης Λιαπέρδος [gliaperd@teikal.gr] Μάρτιος 2012 1 Ηλεκτρονικά Ελεγχόμενοι ιακόπτες Για την υλοποίηση των λογικών κυκλωμάτων χρησιμοποιούνται ηλεκτρονικά
Διαβάστε περισσότεραΣυναρτήσεις & Κλάσεις
Συναρτήσεις & Κλάσεις Overloading class member συναρτήσεις/1 #include typedef unsigned short int USHORT; enum BOOL { FALSE, TRUE}; class Rectangle { public: Rectangle(USHORT width, USHORT
Διαβάστε περισσότεραΑναγνώριση Προτύπων. Σημερινό Μάθημα
Αναγνώριση Προτύπων Σημερινό Μάθημα Εκτίμηση Πυκνότητας με k NN k NN vs Bayes classifier k NN vs Bayes classifier Ο κανόνας ταξινόμησης του πλησιέστερου γείτονα (k NN) lazy αλγόριθμοι O k NN ως χαλαρός
Διαβάστε περισσότεραHY 280. θεμελιακές έννοιες της επιστήμης του υπολογισμού ΑΣΚΗΣΕΙΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ. Γεώργιος Φρ.
HY 280 «ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΟΥ» θεμελικές έννοιες της επιστήμης του υπολογισμού ΑΣΚΗΣΕΙΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ Γεώργιος Φρ. Γεωργκόπουλος μέρος Α Εισγωγή, κι η σική θεωρί των πεπερσμένων
Διαβάστε περισσότεραΗλεκτρονικοί Υπολογιστές Ι: Εισαγωγή στη γλώσσα
Τ Ε Τ Υ Π Κ Ηλεκτρονικοί Υπολογιστές Ι: Εισαγωγή στη γλώσσα προγραμματισμού Fortran 95 Σημειώσεις Διαλέξεων Σ. Σ Ηράκλειο Σεπτέμβριος 2014 Copyright c 2006 2014 Σ. Σταματιάδης, (stamatis@materials.uoc.gr)
Διαβάστε περισσότεραΑναγνώριση Προτύπων. Σημερινό Μάθημα
Αναγνώριση Προτύπων Σημερινό Μάθημα Bias (απόκλιση) και variance (διακύμανση) Ελεύθεροι Παράμετροι Ελεύθεροι Παράμετροι Διαίρεση dataset Μέθοδος holdout Cross Validation Bootstrap Bias (απόκλιση) και variance
Διαβάστε περισσότεραΕισαγωγή στη γλώσσα προγραμματισμού Fortran 95
Τ Ε Τ Υ Π Κ Εισαγωγή στη γλώσσα προγραμματισμού Fortran 95 Σημειώσεις Διαλέξεων Σ. Σ Ηράκλειο Φεβρουάριος 2015 Copyright c 2006 2015 Σ. Σταματιάδης, (stamatis@materials.uoc.gr) Η στοιχειοθεσία έγινε από
Διαβάστε περισσότεραΣχεδίαση Ψηφιακών Κυκλωμάτων
Σχεδίαση Ψηφιακών Κυκλωμάτων Συνδυαστική και ακολουθιακή λογική Νικόλαος Καββαδίας nkavv@uop.gr 10 Νοεμβρίου 2010 Σκιαγράφηση της διάλεξης Αρχές σχεδίασης συνδυαστικών κυκλωμάτων CMOS Λογικές πύλες και
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Εαρινό Εξάμηνο
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ231: Δομές Δεδομένων και Αλγόριθμοι Εαρινό Εξάμηνο 2017-2018 Φροντιστήριο 3 - Λύσεις 1. Εστω ο πίνακας Α = [12, 23, 1, 5, 7, 19, 2, 14]. i. Να δώσετε την κατάσταση
Διαβάστε περισσότεραΣκιαγράφηση της διάλεξης. Σχεδίαση Ψηφιακών Κυκλωμάτων. Ορισμοί για τις χρονικές καθυστερήσεις διάδοσης. Συνδυαστική και ακολουθιακή λογική
Σκιαγράφηση της διάλεξης Σχεδίαση Ψηφιακών Κυκλωμάτων Συνδυαστική και ακολουθιακή λογική Νικόλαος Καββαδίας nkavv@uop.gr Αρχές σχεδίασης συνδυαστικών κυκλωμάτων CMOS Λογικές πύλες και βασικά συνδυαστικά
Διαβάστε περισσότεραΕστω X σύνολο και A μια σ-άλγεβρα στο X. Ονομάζουμε το ζεύγος (X, A) μετρήσιμο χώρο.
2 Μέτρα 2.1 Μέτρα σε μετρήσιμο χώρο Εστω X σύνολο και A μια σ-άλγεβρα στο X. Ονομάζουμε το ζεύγος (X, A) μετρήσιμο χώρο. Ορισμός 2.1. Μέτρο στον (X, A) λέμε κάθε συνάρτηση µ : A [0, ] που ικανοποιεί τις
Διαβάστε περισσότεραΟ Ισχυρός Νόμος των Μεγάλων Αριθμών
1 Ο Ισχυρός Νόμος των Μεγάλων Αριθμών Στο κεφάλαιο αυτό παρουσιάζουμε ένα από τα σημαντικότερα αποτελέσματα της Θεωρίας Πιθανοτήτων, τον ισχυρό νόμο των μεγάλων αριθμών. Η διατύπωση που θα αποδείξουμε
Διαβάστε περισσότεραΣΧΟΛΙΚΟ ΕΤΟΣ ΕΥΘΥΓΡΑΜΜΗ ΟΜΑΛΗ ΚΙΝΗΣΗ ΤΡΙΩΡΗ ΓΡΑΠΤΗ ΕΞΕΤΑΣΗ ΣΤΗ ΦΥΣΙΚΗ A ΛΥΚΕΙΟΥ. Ονοματεπώνυμο Τμήμα
Σελίδα 1 ΣΧΟΛΙΚΟ ΕΤΟΣ 2014 2015 ΕΥΘΥΓΡΑΜΜΗ ΟΜΑΛΗ ΚΙΝΗΣΗ ΤΡΙΩΡΗ ΓΡΑΠΤΗ ΕΞΕΤΑΣΗ ΣΤΗ ΦΥΣΙΚΗ A ΛΥΚΕΙΟΥ Ονοματεπώνυμο Τμήμα ΘΕΜΑ Α Οδηγία: Να γράψετε στην κόλλα σας τον αριθμό καθεμιάς από τις παρακάτω ερωτήσεις
Διαβάστε περισσότερατεσσάρων βάσεων δεδομένων που θα αντιστοιχούν στους συνδρομητές
Σ Υ Π Τ Μ Α 8 Ιουνίου 2010 Άσκηση 1 Μια εταιρία τηλεφωνίας προσπαθεί να βρει πού θα τοποθετήσει τις συνιστώσες τηλεφωνικού καταλόγου που θα εξυπηρετούν τους συνδρομητές της. Η εταιρία εξυπηρετεί κατά βάση
Διαβάστε περισσότεραΑναγνώριση Προτύπων 1
Αναγνώριση Προτύπων 1 Σημερινό Μάθημα Βασικό σύστημα αναγνώρισης προτύπων Προβλήματα Πρόβλεψης Χαρακτηριστικά και Πρότυπα Ταξινομητές Classifiers Προσεγγίσεις Αναγνώρισης Προτύπων Κύκλος σχεδίασης Συστήματος
Διαβάστε περισσότεραΑναγνώριση Προτύπων. Σημερινό Μάθημα
Αναγνώριση Προτύπων Σημερινό Μάθημα Μη Παραμετρικός Υπολογισμός πυκνότητας με εκτίμηση Ιστόγραμμα Παράθυρα Parzen Εξομαλυμένη Kernel Ασκήσεις 1 Μη Παραμετρικός Υπολογισμός πυκνότητας με εκτίμηση Κατά τη
Διαβάστε περισσότερα( ιμερείς) ΙΜΕΛΕΙΣ ΣΧΕΣΕΙΣ Α Β «απεικονίσεις»
( ιμερείς) ΙΜΕΛΕΙΣ ΣΧΕΣΕΙΣ Α Β «πεικονίσεις» 1. ΣΧΕΣΕΙΣ: το σκεπτικό κι ο ορισμός. Τ σύνολ νπριστούν ιδιότητες μεμονωμένων στοιχείων: δεδομένου συνόλου S, κι ενός στοιχείου σ, είνι δυντόν είτε σ S είτε
Διαβάστε περισσότεραΙόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος «Εισαγωγή στον Προγραμματισμό»
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ακαδημαϊκό Έτος 2007 2008 ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος «Εισαγωγή στον Προγραμματισμό» Διδάσκοντες: Θεόδωρος Ανδρόνικος & Δημήτριος Θεοτόκης Περιεχόμενα
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ ΜΑΘΗΜΑ: ΕΡΩΤΗΣΕΙΣ ΟΙΚΟΝΟΜΙΚΗΣ ΘΕΩΡΙΑΣ
ΜΑΘΗΜΑ: ΕΡΩΤΗΣΕΙΣ ΟΙΚΟΝΟΜΙΚΗΣ ΘΕΩΡΙΑΣ Tα Πανεπιστημιακά Φροντιστήρια «ΚΟΛΛΙΝΤΖΑ» προετοιμάζοντας σε ολιγομελείς ομίλους τους υποψήφιους για τον επικείμενο διαγωνισμό του Υπουργείου Οικονομικών, με κορυφαίο
Διαβάστε περισσότεραΕπίλυση ειδικών μορφών ΣΔΕ
15 Επίλυση ειδικών μορφών ΣΔΕ Σε αυτό το κεφάλαιο θα δούμε κάποιες ειδικές μορφές ΣΔΕ για τις οποίες υπάρχει μέθοδος επίλυσης. Περισσότερες μπορεί να δει κανείς στο Kloeden and Plaen (199), 4.-4.4. Θα
Διαβάστε περισσότεραέγγραφο σε κάθε διάσταση αντιστοιχούν στο πλήθος εμφανίσεων της λέξης (που αντιστοιχεί στη συγκεκριμένη διάσταση) εντός του εγγράφου.
Π Π Σ Τ Π Ε Τ Ψ Σ Δομές Δεδομένων 2016-2017 2η Εργασία Χρήστος Δουλκερίδης Ορέστης Τελέλης 1 Περιγραφή Η ομαδοποίηση εγγράφων (document clustering) με βάση τα περιεχόμενά τους είναι ένα πολύ ενδιαφέρον
Διαβάστε περισσότεραΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Μούλου Ευγενία
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΑΡΧΕΙΑ Ο πιο γνωστός τρόπος οργάνωσης δεδομένων με τη χρήση ηλεκτρονικών υπολογιστών είναι σε αρχεία. Ένα αρχείο μπορούμε να το χαρακτηρίσουμε σαν ένα σύνολο που αποτελείται από οργανωμένα
Διαβάστε περισσότερα9η Ενότητα: Προβλήματα ικτυακών Ροών
Θέματα Αλγορίθμων Αλγόριθμοι και Εφαρμογές στον Πραγματικό Κόσμο CSE.UOI : Μεταπτυχιακό Μάθημα 9η Ενότητα: Προβλήματα ικτυακών Ροών Σπύρος Κοντογιάννης kontog@cse.uoi.gr Τμήμα Μηχανικών Η/Υ & Πληροφορικής
Διαβάστε περισσότεραΑλγόριθμοι & Βελτιστοποίηση
Αλγόριθμοι & Βελτιστοποίηση ΠΜΣ/ΕΤΥ: Μεταπτυχιακό Μάθημα 8η Ενότητα: Γραμμικός Προγραμματισμός ως Υπορουτίνα για Επίλυση Προβλημάτων Χρήστος Ζαρολιάγκης (zaro@ceid.upatras.gr) Σπύρος Κοντογιάννης (kontog@cs.uoi.gr)
Διαβάστε περισσότεραΑνελίξεις σε συνεχή χρόνο
4 Ανελίξεις σε συνεχή χρόνο Σε αυτό το κεφάλαιο είναι συγκεντρωμένοι ορισμοί και αποτελέσματα από τη θεωρία των στοχαστικών ανελιξεων συνεχούς χρόνου. Με εξαίρεση την Παράγραφο 4.1, η οποία είναι εντελώς
Διαβάστε περισσότεραG περιέχει τουλάχιστον μία ακμή στο S. spanning tree στο γράφημα G.
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ Σχεδίαση και Ανάλυση Αλγορίθμων Διδάσκων: Ε. Μαρκάκης, Φθινοπωρινό εξάμηνο 2014-2015 Λύσεις 3ης Σειράς Ασκήσεων
Διαβάστε περισσότεραΑνεξαρτησία Ανεξαρτησία για οικογένειες συνόλων και τυχαίες μεταβλητές
10 Ανεξαρτησία 10.1 Ανεξαρτησία για οικογένειες συνόλων και τυχαίες μεταβλητές Στην παράγραφο αυτή δουλεύουμε σε χώρο πιθανότητας (Ω, F, P). Δίνουμε καταρχάς τον ορισμό της ανεξαρτησίας για ενδεχόμενα,
Διαβάστε περισσότεραΑλγόριθμοι & Βελτιστοποίηση ΠΜΣ-ΕΤΥ : Μεταπτυχιακό Μάθημα
Αλγόριθμοι & Βελτιστοποίηση ΠΜΣ-ΕΤΥ : Μεταπτυχιακό Μάθημα 9η Ενότητα: Προβλήματα ικτυακών Ροών Χρήστος Ζαρολιάγκης (zaro@ceid.upatras.gr) Σπύρος Κοντογιάννης (kontog@cse.uoi.gr) Τμήμα Μηχανικών Η/Υ & Πληροφορικής
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ ΜΑΘΗΜΑ: ΟΙΚΟΝΟΜΙΚΗ ΘΕΩΡΙΑ
ΜΑΘΗΜΑ: ΟΙΚΟΝΟΜΙΚΗ ΘΕΩΡΙΑ Την ευθύνη του εκπαιδευτικού υλικού έχει ο επιστημονικός συνεργάτης των Πανεπιστημιακών Φροντιστηρίων «ΚOΛΛΙΝΤΖΑ», οικονομολόγος συγγραφέας θεμάτων ΑΣΕΠ, Παναγιώτης Βεργούρος.
Διαβάστε περισσότεραΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΡΧΕΣ ΟΙΚΟΝΟΜΙΚΗΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑ ΕΠΙΛΟΓΗΣ Γ ΛΥΚΕΙΟΥ
ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΡΧΕΣ ΟΙΚΟΝΟΜΙΚΗΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑ ΕΠΙΛΟΓΗΣ Γ ΛΥΚΕΙΟΥ ΗΜΕΡΟΜΗΝΙΑ: ΕΠΩΝΥΜΟ: ΟΝΟΜΑ: ΟΜΑΔΑ Α Για τις προτάσεις Α1 μέχρι και Α6 να
Διαβάστε περισσότεραΑνεξαρτησία Ανεξαρτησία για οικογένειες συνόλων και τυχαίες μεταβλητές
10 Ανεξαρτησία 10.1 Ανεξαρτησία για οικογένειες συνόλων και τυχαίες μεταβλητές Στην παράγραφο αυτή δουλεύουμε σε χώρο πιθανότητας (Ω, F, P). Δίνουμε καταρχάς τον ορισμό της ανεξαρτησίας για ενδεχόμενα,
Διαβάστε περισσότεραΤο δεντροπλάτος και το γνήσιο δεντροπλάτος.
Διπλωματική Εργασία Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Τμήμα Μαθηματικών μπλ : Μεταπτυχιακό Πρόγραμμα στη Λογική και Θεωρία Αλγορίθμων και Υπολογισμού Το δεντροπλάτος και το γνήσιο δεντροπλάτος.
Διαβάστε περισσότεραΨηφιακή Εικόνα. Σημερινό μάθημα!
Ψηφιακή Εικόνα Σημερινό μάθημα! Ψηφιακή Εικόνα Αναλογική εικόνα Ψηφιοποίηση (digitalization) Δειγματοληψία Κβαντισμός Δυαδικές δ έ (Binary) εικόνες Ψηφιακή εικόνα & οθόνη Η/Υ 1 Ψηφιακή Εικόνα Μια ακίνητη
Διαβάστε περισσότεραΕφαρμογές στην κίνηση Brown
13 Εφαρμογές στην κίνηση Brown Σε αυτό το κεφάλαιο θέλουμε να κάνουμε για την πολυδιάστατη κίνηση Brown κάτι ανάλογο με αυτό που κάναμε στην Παράγραφο 7.2 για τη μονοδιάστατη κίνηση Brown. Δηλαδή να μελετήσουμε
Διαβάστε περισσότεραMartingales. 3.1 Ορισμός και παραδείγματα
3 Martingales 3.1 Ορισμός και παραδείγματα Εστω χώρος πιθανότητας (Ω, F, P). Διήθηση σε αυτό τον χώρο λέμε μια αύξουσα ακολουθία (F n ) n 0 σ-αλγεβρών, η καθεμία από τις οποίες είναι υποσύνολο της F. Δηλαδή,
Διαβάστε περισσότεραΜονάδες 5 1.2.α. Να γράψετε στο τετράδιό σας τον παρακάτω πίνακα σωστά συµπληρωµένο.
ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΤΑΞΗ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ Γ ΤΑΞΗΣ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΕΥΤΕΡΑ 12 ΙΟΥΝΙΟΥ 2000 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΠΑΡΑΓΩΓΗΣ): ΧΗΜΕΙΑ - ΒΙΟΧΗΜΕΙΑ ΣΥΝΟΛΟ ΣΕΛΙ
Διαβάστε περισσότεραRing Routing and Wavelength Conversion. Γιώργος Ζώης
Ring Routing and Wavelength Conversion Γιώργος Ζώης Ενότητες της παρουσίασης 1. Directed Ring Routing Wavelength Conversion σε WDM δίκτυα. 2. Wavelength Conversion σε shortest path δρομολογήσεις. 3. Επιπλέον
Διαβάστε περισσότεραΗ εξίσωση Black-Scholes
8 Η εξίσωση Black-Scholes 8. Μια απλή αγορά Θεωρούμε ότι έχουμε μια αγορά που έχει μόνο δύο προϊόντα. Το ένα είναι η δυνατότητα κατάθεσης σε μια τράπεζα (ισοδύναμα, αγορά ομολόγων της τράπεζας) και το
Διαβάστε περισσότερα2. Δίκτυα Πολυπλεξίας Μήκους Κύματος (WDM Δίκτυα)
2. Δίκτυα Πολυπλεξίας Μήκους Κύματος (WDM Δίκτυα) Η πολυπλεξία μήκους κύματος (WDM πολυπλεξία) παρέχει συμβατότητα μεταξύ του εύρους ζώνης του οπτικού μέσου οπτική ίνα και του εύρους ζώνης του τερματικού
Διαβάστε περισσότεραΓλώσσες Περιγραφής Υλικού Ι
Γλώσσες Περιγραφής Υλικού Ι Μοντελοποίηση ακολουθιακών κυκλωμάτων Νικόλαος Καββαδίας nkavv@uop.gr 13 Μαρτίου 2012 Σκιαγράφηση της διάλεξης Στοιχεία ακολουθιακής σχεδίασης με Verilog HDL Λίστα ευαισθησίας
Διαβάστε περισσότεραΜΙΚΡΟΟΙΚΟΝΟΜΙΚΗ Η ΚΑΤΑΝΑΛΩΤΙΚΗ ΑΠΟΦΑΣΗ. Άσκηση με θέμα τη μεγιστοποίηση της χρησιμότητας του καταναλωτή
ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΙΟΝΙΩΝ ΝΗΣΩΝ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΕΙΣΑΓΩΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ: ΔΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 07 08 ΛΕΥΚΑΔΑ ΜΙΚΡΟΟΙΚΟΝΟΜΙΚΗ Η ΚΑΤΑΝΑΛΩΤΙΚΗ
Διαβάστε περισσότεραΜΑΘΗΜΑ: ΟΙΚΟΝΟΜΙΚΗ ΘΕΩΡΙΑ
ΜΑΘΗΜΑ: ΟΙΚΟΝΟΜΙΚΗ ΘΕΩΡΙΑ Tα Πανεπιστημιακά Φροντιστήρια «ΚΟΛΛΙΝΤΖΑ» προετοιμάζοντας σε ολιγομελείς ομίλους τους υποψήφιους για τον επικείμενο διαγωνισμό του Υπουργείου Οικονομικών, με κορυφαίο επιτελείο
Διαβάστε περισσότερατους στην Κρυπτογραφία και τα
Οι Ομάδες των Πλεξίδων και Εφαρμογές τους στην Κρυπτογραφία και τα Πολυμερή Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών ΕΜΠ Επιβλέπουσα Καθηγήτρια: Λαμπροπούλου Σοφία Ιούλιος, 2013 Περιεχόμενα
Διαβάστε περισσότεραΓλώσσες Περιγραφής Υλικού Ι
Γλώσσες Περιγραφής Υλικού Ι Μοντελοποίηση συνδυαστικών κυκλωμάτων Νικόλαος Καββαδίας nkavv@uop.gr 06 Μαρτίου 2012 Σκιαγράφηση της διάλεξης Περισσότερα για τα αρθρώματα Αναθέσεις και τελεστές Συντρέχων
Διαβάστε περισσότεραΣκιαγράφηση της διάλεξης. Γλώσσες Περιγραφής Υλικού Ι. Διαφορές μεταξύ των περιγραφών συνδυαστικών και ακολουθιακών κυκλωμάτων
Σκιαγράφηση της διάλεξης Γλώσσες Περιγραφής Υλικού Ι Μοντελοποίηση ακολουθιακών κυκλωμάτων Νικόλαος Καββαδίας nkavv@uop.gr 13 Μαρτίου 2012 Στοιχεία ακολουθιακής σχεδίασης με Verilog HDL Λίστα ευαισθησίας
Διαβάστε περισσότεραΗ ανισότητα α β α±β α + β με α, β C και η χρήση της στην εύρεση ακροτάτων.
A A N A B P Y T A Άρθρο στους Μιγαδικούς Αριθμούς 9 5 0 Η ανισότητα α β α±β α + β με α, β C και η χρήση της στην εύρεση ακροτάτων. Δρ. Νίκος Σωτηρόπουλος, Μαθηματικός Εισαγωγή Το άρθρο αυτό γράφεται με
Διαβάστε περισσότεραΠροτεινόμενα θέματα. στο μάθημα. Αρχές οργάνωσης και διοίκησης επιχειρήσεων. ΟΜΑΔΑ Α: Ερωτήσεις Σωστού Λάθους.
Προτεινόμενα θέματα στο μάθημα Αρχές οργάνωσης και διοίκησης επιχειρήσεων ΟΜΑΔΑ Α: Ερωτήσεις Σωστού Λάθους Στις παρακάτω προτάσεις να γράψετε δίπλα στον αριθμό της καθεμιάς τη λέξη Σωστό αν κρίνετε ότι
Διαβάστε περισσότεραΑΣΕΠ 2000 ΑΣΕΠ 2000 Εμπορική Τράπεζα 1983 Υπουργείο Κοιν. Υπηρ. 1983
20 Φεβρουαρίου 2010 ΑΣΕΠ 2000 1. Η δεξαμενή βενζίνης ενός πρατηρίου υγρών καυσίμων είναι γεμάτη κατά τα 8/9. Κατά τη διάρκεια μιας εβδομάδας το πρατήριο διέθεσε τα 3/4 της βενζίνης αυτής και έμειναν 4000
Διαβάστε περισσότεραΕπιχειρησιακή Ερευνα Ι
Επιχειρησιακή Ερευνα Ι Μ. Ζαζάνης Κεφάλαιο 1 Τετραγωνικές μορφές στον R n και το ϑεώρημα του Taylor Ορισμός 1. Εστω a 11 a 1n A =.. a n1 a nn συμμετρικός πίνακας n n με στοιχεία στους πραγματικούς αριθμούς.
Διαβάστε περισσότεραΑ. ΓΙΑ ΟΛΟΥΣ ΤΟΥΣ ΜΑΘΗΤΕΣ ΘΡΗΣΚΕΥΤΙΚΑ. ΙΣΤΟΡΙΑ (Γενικής Παιδείας) ΑΡΧΑΙΑ ΕΛΛΗΝΙΚΑ (Γενικής Παιδείας) ΛΟΓΟΤΕΧΝΙΑ (Γενικής Παιδείας)
2014 15 1 Α. ΓΙΑ ΟΛΟΥΣ ΤΟΥΣ ΜΑΘΗΤΕΣ ΘΡΗΣΚΕΥΤΙΚΑ Διδακτικές ενότητες: 1 6, 10, 11, 12, 15, 16. ΙΣΤΟΡΙΑ (Γενικής Παιδείας) ΚΕΦΑΛΑΙΟ Α Ενότητες : 1, 2, 3 (εκτός από : Επανάσταση στις Ηγεμονίες, Εδραίωση της
Διαβάστε περισσότεραΣΤΟ ΙΑΤΡΕΙΟ. Με την πιστοποίηση του αποκτά πρόσβαση στο περιβάλλον του ιατρού που παρέχει η εφαρμογή.
ΣΤΟ ΙΑΤΡΕΙΟ Ο ιατρός αφού διαπιστώσει εάν το πρόσωπο που προσέρχεται για εξέταση είναι το ίδιο με αυτό που εικονίζεται στο βιβλιάριο υγείας και ελέγξει ότι είναι ασφαλιστικά ενήμερο (όπως ακριβώς γίνεται
Διαβάστε περισσότερα