Εικονικές Μηχανές, ιερµηνείς και υναµική ιαχείριση Μνήµης
|
|
- Λυσιστράτη Δασκαλοπούλου
- 8 χρόνια πριν
- Προβολές:
Transcript
1 Εικονικές Μηχανές, ιερµηνείς και υναµική ιαχείριση Μνήµης Περιεχόµενα Εικονικές µηχανές (Virtual Machines) ιερµηνείς (Interpreters) υναµική διαχείριση µνήµης Στοίβες (Stacks) Σωροί (Heaps) Συλλογή σκουπιδιών (Garbage Collection) Μαρκάρισµα και σκούπισµα (mark and sweep) Αντιγραφή (copying) Μέτρηµα αναφορών (reference counting) Franz Marc, Rehe im Walde (II), Κωστής Σαγώνας Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 2 Εικονικές Μηχανές (Virtual Machines) Οι εικονικές µηχανές (VMs) αποτελούν ένα ενδιάµεσο στάδιο στη µεταγλώττιση των γλωσσών προγραµµατισµού Οι VMs είναι µηχανές διότι επιτρέπουν τη βήµα προς βήµα εκτέλεση των προγραµµάτων Οι VMs είναι εικονικές (ή αφηρηµένες) διότι συνήθως δεν υλοποιούνται στο υλικό κάποιου υπολογιστή παραλείπουν πολλές από τις λεπτοµέρειες των πραγµατικών υπολογιστικών µηχανών (αυτών που υλοποιούνται σε hardware) Οι VMs συνήθως έχουν συστατικά στοιχεία που υλοποιούν λειτουργίες που είναι αναγκαίες για την υλοποίηση συγκεκριµένων (κλάσεων) γλωσσών προγραµµατισµού Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 3 Εικονικές Μηχανές: Πλεονεκτήµατα Γεφυρώνουν το χάσµα του υψηλού επιπέδου των γλωσσών προγραµµατισµού και του χαµηλού επιπέδου των πραγµατικών υπολογιστών µηχανών Απαιτούν λιγότερη προσπάθεια για την υλοποίησή τους και για τη µεταγλώττιση των προγραµµάτων Ο πειραµατισµός και η µετατροπή τους είναι ευκολότερη από ότι η µετατροπή ενός µεταγλωττιστή για τη γλώσσα Σηµαντικές ιδιότητες, ειδικά για πρωτοεµφανιζόµενες γλώσσες Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 4
2 Εικονικές Μηχανές: Πλεονεκτήµατα Προσφέρουν αυξηµένη φορητότητα (portability) Οι διερµηνείς VM συνήθως υλοποιούνται σε C Ο VM κώδικας µπορεί να µεταφερθεί µέσω διαδικτύου και να τρέξει στις περισσότερες υπολογιστικές πλατφόρµες Συνήθως, ο VM κώδικας για ένα πρόγραµµα είναι (σηµαντικά) µικρότερος σε µέγεθος από τον αντίστοιχο κώδικα µηχανής Αρκετές ιδιότητες ασφάλειας του VM κώδικα µπορούν να επαληθευθούν (verified) µηχανικά Είναι ευκολότερο να αποδείξουµε τυπικά την ορθότητα του σχεδιασµού και της υλοποίησής των VMs Η µέτρηση της επίδοσης (profiling) και η αποσφαλµάτωση (debugging) προγραµµάτων είναι ευκολότερες Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 5 Εικονικές Μηχανές: Μειοκτήµατα Χειρότερη επίδοση (σε χρόνο) των διερµηνέων εικονικών µηχανών σε σχέση µε την εκτέλεση εντολών σε γλώσσα µηχανής λόγω του Eπιπλέον κόστους διερµηνίας (overhead of interpretation) Ότι είναι σηµαντικά πιο δύσκολο να επωφεληθούµε από κάποια χαρακτηριστικά του µοντέρνου hardware των υπολογιστών (π.χ. του hardware-based branch prediction) Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 6 Ιστορία των Εικονικών Μηχανών Οι πρώτες VMs εµφανίστηκαν στα τέλη της δεκαετίας του 1950 Οι πρώτες υλοποιήσεις της Lisp (1958) χρησιµοποίησαν VMs µε αυτόµατη ανακύκλωση µνήµης (garbage collection), sandboxing, reflection, και διαδραστικό φλοιό (interactive shell) Στις αρχές της δεκαετίας του 1970, η γλώσσα Forth χρησιµοποίησε µια µικρή και σχετικά εύκολα υλοποιήσιµη VM Η γλώσσα Smalltalk (τέλη του 1970) ήταν από τις πρώτες γλώσσες της οποίας η υλοποίηση επέτρεπε την αλλαγή του κώδικα κατά τη διάρκεια εκτέλεσης του προγράµµατος (πρώτο πραγµατικά διαδραστική υλοποίηση αντικειµενοστρεφούς γλώσσας προγραµµατισµού) Η υλοποίηση της γλώσσας Self µέσω VM (τέλη του 1980), µιας γλώσσας µε πολλά κοινά στοιχεία µε τη Smalltalk, κατάφερε να είναι τέτοια ώστε η επίδοσή της να µη διαφέρει πολύ από αυτήν που αντίστοιχοι µεταγλωττιστές της γλώσσας επιτύγχαναν Η Java (µέσα του 1990) έκανε τις VMs ευρέως χρησιµοποιούµενες και γνωστές Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 7 Επιλογές σχεδιασµού των Εικονικών Μηχανών Κάποιες επιλογές σχεδιασµού των VMs είναι παρόµοιες µε επιλογές που κάνουµε κατά το σχεδιασµό της µορφής του ενδιάµεσου κώδικα ενός µεταγλωττιστή. Για παράδειγµα Θέλουµε η µηχανή να χρησιµοιποιείται σε πολλές διαφορετικές αρχιτεκτονικές και λειτουργικά συστήµατα; (όπως π.χ. η JVM) Θέλουµε η µηχανή να χρησιµοιποιείται σε πολλές διαφορετικές γλώσσες πηγαίου κώδικα; (όπως π.χ. το CLI/CLR (.NET)) Κάποιες άλλες είναι παρόµοιες µε αυτές του backend ενός compiler: Είναι καλύτερη επίδοση πιο σηµαντική από µεγαλύτερη φορητότητα; Είναι η αξιοπιστία πιο σηµαντική από την επίδοση; Είναι το (µικρότερο) µέγεθος του κώδικα πιο σηµαντικός παράγοντας από την επίδοση σε ταχύτητα της µηχανής; Κάποιες άλλες παρόµοιες µε αυτές των λειτουργικών συστηµάτων: Πως υλοποιείται η διαχείριση µνήµης, ο ταυτοχρονισµός, οι εξαιρέσεις, Είναι η µικρή κατανάλωση µνήµης, το scalability, ή η ασφάλεια πιο σηµαντικά χαρακτηριστικά από την επίδοση; Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 8
3 Συστατικά των Εικονικών Μηχανών Εξαρτώνται από πολλούς παράγοντες: Είναι η γλώσσα (το περιβάλλον της γλώσσας) διαδραστική; Η γλώσσα υποστηρίζει ενδοσκόπηση (reflection) και/ή δυναµικό φόρτωµα κώδικα (dynamic loading); Είναι η επίδοση το παν; Χρειάζεται η γλώσσα να υποστηρίζει ταυτοχρονισµό; Είναι απαραίτητο το sandboxing; Υλοποίηση των Εικονικών Μηχανών Οι εικονικές µηχανές συνήθως γράφονται σε φορητές γλώσσες προγραµµατισµού όπως η C ή η C++ Για µέρη που είναι σηµαντικά για την επίδοση της εικονικής µηχανής, συνήθως χρησιµοποιούµε assembly Εικονικές µηχανές για κάποιες γλώσσες (π.χ. Lisp, Forth, Smalltalk) γράφονται µε χρήση της ίδιας τη γλώσσας Πολλοί διερµηνείς για VMs γράφονται σε GNU C, για λόγους που θα γίνουν προφανείς στις επόµενες διαφάνειες Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 9 Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 10 Μορφές ιερµηνέων Αρκετές υλοποιήσεις γλωσσών προγραµµατισµού χρησιµοποιούν διερµηνείς δύο ειδών: Command-line interpreter ιαβάζει και αναλύει συντακτικά κοµµάτια πηγαίου κώδικα της γλώσσας τα οποία και εκτελεί Χρησιµοποιείται σε συστήµατα που αλληλεπιδρούν µε το χρήστη Virtual machine instruction interpreter ιαβάζει και εκτελεί εντολές µιας ενδιάµεσης µορφής εκτελέσιµου κώδικα όπως bytecode εντολών µιας εικονικής µηχανής Υλοποίηση των ιερµηνέων Υπάρχουν πολλοί τρόποι υλοποίησης διερµηνέων: 1. Direct string interpretation Source level interpreters are very slow because they spend much of their time in doing lexical analysis 2. Compilation into a (typically abstract syntax) tree and interpretation of that tree Such interpreters avoid lexical analysis costs, but they still have to do much list scanning (e.g. when implementing a goto or call ) 3. Compilation into a virtual machine and interpretation of the VM code Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 11 Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 12
4 ιερµηνείς Εντολών Εικονικών Μηχανών By compiling the program to the instruction set of a virtual machine and adding a table that maps names and labels to addresses in this program, some of the interpretation overhead can be reduced For convenience, most VM instruction sets use integral numbers of bytes to represent everything opcodes, register numbers, stack slot numbers, indices into the function or constant table, etc. Opcode Reg # CONSTANT Example: The GET_CONST2 instruction Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 13 Μέρη της Υλοποίησης µιας Εικονικής Μηχανής Το µέρος που αποθηκεύεται το πρόγραµµα (ο κώδικας) Το πρόγραµµα είναι µια ακολουθία από εντολές Φορτωτής (loader) Μέρη που καταγράφουν την κατάσταση (της εκτέλεσης) Στοίβα (stack) Σωρός (heap) Καταχωρητές (registers) Ένας ειδικός καταχωρητής, ο µετρητής προγράµµατος (program counter), δείχνει πάντα στην επόµενη προς εκτέλεση εντολή Το σύστηµα χρόνου εκτέλεσης (runtime system) Σύστηµα παραχώρησης µνήµης (memory allocator) Συλλέκτης σκουπιδιών (garbage collector) Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 14 Η βασική δοµή ενός Bytecode Interpreter source_reg_num = pc[1]; const_num_to_match = get_2_bytes(&pc[2]); // get_const2 code pc += 4; case JUMP: jump_addr = get_4_bytes(&pc[1]); Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 15 To align or to not align VM instructions? Opcode Opcode Jump Address Unused Bytes Jump Address Σε µια 32-bit µηχανή NOTE: Padding of instructions can be done by the loader. The size of the bytecode files need not be affected. Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 16
5 Bytecode Interpreter with Aligned Instructions source_reg_num = pc[1]; const_num_to_match = get_2_bytes(&pc[2]); // get_const2 code pc += 4; jump_addr = get_4_bytes(&pc[4]); Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 17 ιερµηνέας µε αφηρηµένη κωδικοποίηση εντολών #define GET_CONST2_SIZEOF 4 #define JUMP_SIZEOF 8 #define GET_CONST2_ARG1 1 #define GET_CONST2_ARG2 2 #define JUMP_ARG1 4 // get_const2 code jump_addr = get_4_bytes(&pc[jump_arg1]); Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 18 ιερµηνέας µε αφηρηµένο έλεγχο #define NEXT_INSTRUCTION \ goto next_instruction // get_const2 code jump_addr = get_4_bytes(&pc[jump_arg1]); Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 19 Έµµεσα Νηµατικοί ιερµηνείς Σε έναν έµεσα νηµατικό διερµηνέα (indirectly threaded interpreter) we do not switch on the opcode encoding; instead we use the bytecodes as indices into a table containing the addresses of the VM instructions The term threaded code refers to a code representation where every instruction is implicitly a function call to the next instruction A threaded interpreter can be very efficiently implemented in assembly In GNU CC, we can use the labels as values C language extension and take the address of a label with &&labelname We can actually write the interpreter in such a way that it uses indirectly threaded code if compiled with GNU CC and a switch for compatibility Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 20
6 οµή ενός Έµµεσα Νηµατικού ιερµηνέα static void *label_tab[] = { &&get_const2_label, &&jump_label, #define NEXT_INSTRUCTION \ goto *(void *)(label_tab[*pc]) get_const2_label: // get_const2 code jump_label: jump_addr = get_4_bytes(&pc[jump_arg1]); Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 21 Άµεσα Νηµατικοί ιερµηνείς In a directly threaded interpreter, we do not use the bytecode instruction encoding at all during runtime Instead, the loader replaces each bytecode instruction encoding (opcode) with the address of the implementation of the instruction This means that we need one word for the opcode, which increases the VM code size Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 22 οµή ενός Άµεσα Νηµατικού ιερµηνέα static void *label_tab[] = { &&get_const2_label, &&jump_label, #define NEXT_INSTRUCTION \ goto **(void **)(pc) get_const2_label: // get_const2 code #define GET_CONST2_SIZEOF 8 jump_label: #define JUMP_SIZEOF 8 pc = get_4_bytes(&pc[jump_arg1]); #define GET_CONST2_ARG1 5 #define GET_CONST2_ARG2 6 #define JUMP_ARG1 4 Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 23 Νηµατικός ιερµηνέας µε Χρήση Prefetching get_const2_label: // prefetching // get_const2 code jump_label: pc = get_4_bytes(&pc[jump_arg1]); Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 24
7 Subroutine Threaded Interpreter The only portable way to implement a threaded interpreter in C is to use subroutine threaded code Each VM instruction is implemented as a function and at the end of each instruction the next function is called Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 25 Stack-based vs. Register-based VMs A VM can either be stack-based or register-based In a stack-based VM most operands are (passed) on the stack The stack can grow as needed In a register-based VM most operands are passed in (virtual) registers These registers are often implemented using an array rather than physical machine registers The number of registers is limited Most VMs are stack-based Stack machines are simpler to implement Stack machines are easier to compile to Less encoding/decoding to find the right register Unless virtual registers are mapped to physical registers, virtual registers are not faster than stack slots Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 26 Virtual Machine Interpreter Tuning Common VM interpreter optimizations include: Writing the interpreter loop and key instructions in assembly Keeping important VM registers (pc, stack top, heap top) in hardware registers GNU C allows global register variables Top of stack caching Splitting the most used set of instruction into a separate interpreter loop Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 27 Instruction Merging and Specialization Instruction Merging: A sequence of VM instructions is replaced by a single (mega-)instruction Reduces interpretation overhead Code locality is enhanced Results in more compact bytecode C compiler has bigger basic blocks to perform optimizations on Instruction Specialization: A special case of a VM instruction is created, typically one where some arguments have a known value which is hard-coded Eliminates the cost of argument decoding Results in more compact bytecode representation Reduces the register pressure from some basic blocks Εικονικές µηχανές, διερµηνείς και διαχείριση µνήµης 28
Εικονικές Μηχανές, Διερμηνείς και Δυναμική Διαχείριση Μνήμης
Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Γλώσσες Προγραμματισμού ΙΙ Διδάσκοντες: Νικόλαος Παπασπύρου, Κωστής Σαγώνας
Εικονικές Μηχανές, Διερμηνείς
Εικονικές Μηχανές, Διερμηνείς και Δυναμική Διαχείριση Μνήμης Περιεχόμενα Εικονικές μηχανές (Virtual Machines) Διερμηνείς (Interpreters) Δυναμική διαχείριση μνήμης Στοίβες (Stacks) Σωροί (Heaps) Συλλογή
ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Αν κάπου κάνετε κάποιες υποθέσεις να αναφερθούν στη σχετική ερώτηση. Όλα τα αρχεία που αναφέρονται στα προβλήματα βρίσκονται στον ίδιο φάκελο με το εκτελέσιμο
derivation of the Laplacian from rectangular to spherical coordinates
derivation of the Laplacian from rectangular to spherical coordinates swapnizzle 03-03- :5:43 We begin by recognizing the familiar conversion from rectangular to spherical coordinates (note that φ is used
05β Η ιδεατή μηχανή της Java
05β Η ιδεατή μηχανή της Java Τεχνολογία Λογισμικού Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Χειμερινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Περιεχόμενα
Instruction Execution Times
1 C Execution Times InThisAppendix... Introduction DL330 Execution Times DL330P Execution Times DL340 Execution Times C-2 Execution Times Introduction Data Registers This appendix contains several tables
ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Ολοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα είναι μικρότεροι το 1000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Διάρκεια: 3,5 ώρες Καλή
HOMEWORK 4 = G. In order to plot the stress versus the stretch we define a normalized stretch:
HOMEWORK 4 Problem a For the fast loading case, we want to derive the relationship between P zz and λ z. We know that the nominal stress is expressed as: P zz = ψ λ z where λ z = λ λ z. Therefore, applying
Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο
Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων Εξάμηνο 7 ο Procedures and Functions Stored procedures and functions are named blocks of code that enable you to group and organize a series of SQL and PL/SQL
2 Composition. Invertible Mappings
Arkansas Tech University MATH 4033: Elementary Modern Algebra Dr. Marcel B. Finan Composition. Invertible Mappings In this section we discuss two procedures for creating new mappings from old ones, namely,
EPL 603 TOPICS IN SOFTWARE ENGINEERING. Lab 5: Component Adaptation Environment (COPE)
EPL 603 TOPICS IN SOFTWARE ENGINEERING Lab 5: Component Adaptation Environment (COPE) Performing Static Analysis 1 Class Name: The fully qualified name of the specific class Type: The type of the class
Phys460.nb Solution for the t-dependent Schrodinger s equation How did we find the solution? (not required)
Phys460.nb 81 ψ n (t) is still the (same) eigenstate of H But for tdependent H. The answer is NO. 5.5.5. Solution for the tdependent Schrodinger s equation If we assume that at time t 0, the electron starts
Πώς μπορεί κανείς να έχει έναν διερμηνέα κατά την επίσκεψή του στον Οικογενειακό του Γιατρό στο Ίσλινγκτον Getting an interpreter when you visit your
Πώς μπορεί κανείς να έχει έναν διερμηνέα κατά την επίσκεψή του στον Οικογενειακό του Γιατρό στο Ίσλινγκτον Getting an interpreter when you visit your GP practice in Islington Σε όλα τα Ιατρεία Οικογενειακού
Λειτουργικά Συστήματα. Εισαγωγή
Λειτουργικά Συστήματα Εισαγωγή Λειτουργικά Συστήματα Ι 4/10/2016 Περιληπτικά Στο σημερινό μάθημα θα δούμε ποια είναι η θέση του Λειτουργικού Συστήματος στην οργάνωση ενός ηλεκτρονικού υπολογιστή. Σπύρος
The Simply Typed Lambda Calculus
Type Inference Instead of writing type annotations, can we use an algorithm to infer what the type annotations should be? That depends on the type system. For simple type systems the answer is yes, and
Γλώσσες Προγραμματισμού Μεταγλωττιστές
Γλώσσες Προγραμματισμού Μεταγλωττιστές Πανεπιστήμιο Μακεδονίας Τμήμα Εφαρμοσμένης Πληροφορικής Ηλίας Σακελλαρίου Δομή Γλώσσες Προγραμματισμού Εισαγωγικά Γλώσσα Μηχανής Γλώσσες υψηλού επιπέδου Μεταγλωττιστές
Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής
Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής Να γραφεί πρόγραμμα το οποίο δέχεται ως είσοδο μια ακολουθία S από n (n 40) ακέραιους αριθμούς και επιστρέφει ως έξοδο δύο ακολουθίες από θετικούς ακέραιους
Homework 3 Solutions
Homework 3 Solutions Igor Yanovsky (Math 151A TA) Problem 1: Compute the absolute error and relative error in approximations of p by p. (Use calculator!) a) p π, p 22/7; b) p π, p 3.141. Solution: For
Assalamu `alaikum wr. wb.
LUMP SUM Assalamu `alaikum wr. wb. LUMP SUM Wassalamu alaikum wr. wb. Assalamu `alaikum wr. wb. LUMP SUM Wassalamu alaikum wr. wb. LUMP SUM Lump sum lump sum lump sum. lump sum fixed price lump sum lump
ω ω ω ω ω ω+2 ω ω+2 + ω ω ω ω+2 + ω ω+1 ω ω+2 2 ω ω ω ω ω ω ω ω+1 ω ω2 ω ω2 + ω ω ω2 + ω ω ω ω2 + ω ω+1 ω ω2 + ω ω+1 + ω ω ω ω2 + ω
0 1 2 3 4 5 6 ω ω + 1 ω + 2 ω + 3 ω + 4 ω2 ω2 + 1 ω2 + 2 ω2 + 3 ω3 ω3 + 1 ω3 + 2 ω4 ω4 + 1 ω5 ω 2 ω 2 + 1 ω 2 + 2 ω 2 + ω ω 2 + ω + 1 ω 2 + ω2 ω 2 2 ω 2 2 + 1 ω 2 2 + ω ω 2 3 ω 3 ω 3 + 1 ω 3 + ω ω 3 +
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07 Αλγόριθμος: Βήμα προς βήμα διαδικασία για την επίλυση κάποιου προβλήματος. Το πλήθος των βημάτων πρέπει να είναι πεπερασμένο. Αλλιώς: Πεπερασμένη
Αρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 7: Αποκωδικοποίηση Εντολής x86 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Τέτοιες λειτουργίες γίνονται διαμέσου του
Για κάθε εντολή υπάρχουν δυο βήματα που πρέπει να γίνουν: Προσκόμιση της εντολής (fetch) από τη θέση που δείχνει ο PC Ανάγνωση των περιεχομένων ενός ή δύο καταχωρητών Τέτοιες λειτουργίες γίνονται διαμέσου
ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I
ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I MIPS Η MIPS (Microprocessor without Interlocked Pipeline Stages) είναι μία αρχιτεκτονική συνόλου εντολών (ISA) γλώσσας μηχανής που αναπτύχθηκε από την εταιρεία
ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly
ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly Αρης Ευθυμίου Το σημερινό μάθημα! Σύνταξη εντολών! Θέματα σχετικά με τη προσπέλαση, οργάνωση μνήμης διευθύνση για κάθε byte διευθύνσεις λέξεων
The challenges of non-stable predicates
The challenges of non-stable predicates Consider a non-stable predicate Φ encoding, say, a safety property. We want to determine whether Φ holds for our program. The challenges of non-stable predicates
Modbus basic setup notes for IO-Link AL1xxx Master Block
n Modbus has four tables/registers where data is stored along with their associated addresses. We will be using the holding registers from address 40001 to 49999 that are R/W 16 bit/word. Two tables that
6.1. Dirac Equation. Hamiltonian. Dirac Eq.
6.1. Dirac Equation Ref: M.Kaku, Quantum Field Theory, Oxford Univ Press (1993) η μν = η μν = diag(1, -1, -1, -1) p 0 = p 0 p = p i = -p i p μ p μ = p 0 p 0 + p i p i = E c 2 - p 2 = (m c) 2 H = c p 2
Advanced Subsidiary Unit 1: Understanding and Written Response
Write your name here Surname Other names Edexcel GE entre Number andidate Number Greek dvanced Subsidiary Unit 1: Understanding and Written Response Thursday 16 May 2013 Morning Time: 2 hours 45 minutes
Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.
Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση:
ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 12: Συνοπτική Παρουσίαση Ανάπτυξης Κώδικα με το Matlab Σαμαράς Νικόλαος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
LANGUAGE OF THE MACHINE. TEI Κρήτης, Τμ. ΕΠΠ, Αρχιτεκτονική Υπολογιστών. Οργάνωση Υπολογιστή. Τυπική οργάνωση υπολογιστή
INSTRUCTIONS LANGUAGE OF THE MACHINE Οργάνωση Υπολογιστή Τυπική οργάνωση υπολογιστή 1 Εκτέλεση προγραμμάτων σε υπολογιστή INSTRUCTION SET Οι λέξεις στη γλώσσα μηχανής ονομάζονται εντολές (instructions)
Σχεδίαση Γλωσσών Προγραμματισμού. Εαρινό Εξάμηνο Lec03 18/02/2019
Σχεδίαση Γλωσσών Προγραμματισμού Εαρινό Εξάμηνο 2018-2019 Lec03 18/02/2019 Γλώσσες με δομή Block Γλώσσες με δομή Block Απλό μοντέλο Μηχανής Εκτέλεσης Διαχείριση Μνήμης Εμβέλεια και διάρκεια ζωής Εμβέλεια
03 Η ιδεατή μηχανή της Java
03 Η ιδεατή μηχανή της Java Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Εαρινό εξάμηνο 2016 17 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Περιεχόμενα Η πλατφόρμα της Java γενικά Εισαγωγή στο
Φροντιστήριο. Παραγωγή τελικού κώδικα. Παραγωγή τελικού κώδικα
ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Παραγωγή τελικού κώδικα Από τον ενδιάμεσο κώδικα στον τελικό (1/2) Τα ορίσματα των εντολών ενδιάμεσου κώδικα είναι του τύπου expr*. Αυτές οι εκφράσεις θα πρέπει
Section 8.3 Trigonometric Equations
99 Section 8. Trigonometric Equations Objective 1: Solve Equations Involving One Trigonometric Function. In this section and the next, we will exple how to solving equations involving trigonometric functions.
Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2)
Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Οργάνωση Προγράµµατος Header Files Μετάφραση και σύνδεση αρχείων προγράµµατος ΕΠΛ 132 Αρχές Προγραµµατισµού
ΕΙΣΑΓΩΓΗ ΣΤΟN ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΕΙΣΑΓΩΓΗ ΣΤΟN ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Εμβέλεια Μεταβλητών Εμβέλεια = το τμήμα του προγράμματος στο οποίο έχει ισχύ ή είναι ορατή η μεταβλητή.
Other Test Constructions: Likelihood Ratio & Bayes Tests
Other Test Constructions: Likelihood Ratio & Bayes Tests Side-Note: So far we have seen a few approaches for creating tests such as Neyman-Pearson Lemma ( most powerful tests of H 0 : θ = θ 0 vs H 1 :
Math 6 SL Probability Distributions Practice Test Mark Scheme
Math 6 SL Probability Distributions Practice Test Mark Scheme. (a) Note: Award A for vertical line to right of mean, A for shading to right of their vertical line. AA N (b) evidence of recognizing symmetry
(C) 2010 Pearson Education, Inc. All rights reserved.
Connectionless transmission with datagrams. Connection-oriented transmission is like the telephone system You dial and are given a connection to the telephone of fthe person with whom you wish to communicate.
Overview. Transition Semantics. Configurations and the transition relation. Executions and computation
Overview Transition Semantics Configurations and the transition relation Executions and computation Inference rules for small-step structural operational semantics for the simple imperative language Transition
Block Ciphers Modes. Ramki Thurimella
Block Ciphers Modes Ramki Thurimella Only Encryption I.e. messages could be modified Should not assume that nonsensical messages do no harm Always must be combined with authentication 2 Padding Must be
DESIGN OF MACHINERY SOLUTION MANUAL h in h 4 0.
DESIGN OF MACHINERY SOLUTION MANUAL -7-1! PROBLEM -7 Statement: Design a double-dwell cam to move a follower from to 25 6, dwell for 12, fall 25 and dwell for the remader The total cycle must take 4 sec
Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού ( Απαντήσεις & Λύσεις Βιβλίου) 1. Σκοποί κεφαλαίου Κύκλος ανάπτυξης προγράµµατος Κατηγορίες γλωσσών προγραµµατισµού
3.4 SUM AND DIFFERENCE FORMULAS. NOTE: cos(α+β) cos α + cos β cos(α-β) cos α -cos β
3.4 SUM AND DIFFERENCE FORMULAS Page Theorem cos(αβ cos α cos β -sin α cos(α-β cos α cos β sin α NOTE: cos(αβ cos α cos β cos(α-β cos α -cos β Proof of cos(α-β cos α cos β sin α Let s use a unit circle
Η ιδεατή μηχανή της Java
Η ιδεατή μηχανή της Java Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Εαρινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Περιεχόμενα Η πλατφόρμα
Προχωρηµένα Θέµατα Αρχιτεκτονικής
Προχωρηµένα Θέµατα Αρχιτεκτονικής Μάθηµα 2 ο : Instruction Set Principles and Examples Μάθηµα 2 ο Προχωρηµένα Θέµατα Αρχιτεκτονικής 1 Σχεδιασµός Συνόλου Εντολών Θέµατα που θα συζητηθούν ιαφορετικές επιλογές
Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java
Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java Δρ. Απόστολος Γκάμας Λέκτορας (407/80) gkamas@uop.gr Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου Διαφάνεια 1 Εισαγωγή
Dynamic types, Lambda calculus machines Section and Practice Problems Apr 21 22, 2016
Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Dynamic types, Lambda calculus machines Apr 21 22, 2016 1 Dynamic types and contracts (a) To make sure you understand the
CHAPTER 25 SOLVING EQUATIONS BY ITERATIVE METHODS
CHAPTER 5 SOLVING EQUATIONS BY ITERATIVE METHODS EXERCISE 104 Page 8 1. Find the positive root of the equation x + 3x 5 = 0, correct to 3 significant figures, using the method of bisection. Let f(x) =
Srednicki Chapter 55
Srednicki Chapter 55 QFT Problems & Solutions A. George August 3, 03 Srednicki 55.. Use equations 55.3-55.0 and A i, A j ] = Π i, Π j ] = 0 (at equal times) to verify equations 55.-55.3. This is our third
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ342: Βάσεις Δεδομένων. Χειμερινό Εξάμηνο Φροντιστήριο 10 ΛΥΣΕΙΣ. Επερωτήσεις SQL
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ342: Βάσεις Δεδομένων Χειμερινό Εξάμηνο 2013 Φροντιστήριο 10 ΛΥΣΕΙΣ Επερωτήσεις SQL Άσκηση 1 Για το ακόλουθο σχήμα Suppliers(sid, sname, address) Parts(pid, pname,
Physical DB Design. B-Trees Index files can become quite large for large main files Indices on index files are possible.
B-Trees Index files can become quite large for large main files Indices on index files are possible 3 rd -level index 2 nd -level index 1 st -level index Main file 1 The 1 st -level index consists of pairs
Fractional Colorings and Zykov Products of graphs
Fractional Colorings and Zykov Products of graphs Who? Nichole Schimanski When? July 27, 2011 Graphs A graph, G, consists of a vertex set, V (G), and an edge set, E(G). V (G) is any finite set E(G) is
Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,
Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:
Αρχιτεκτονική Υπολογιστών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Αρχιτεκτονικό σύνολο εντολών Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ψηφιακή Οικονομία. Διάλεξη 7η: Consumer Behavior Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Ψηφιακή Οικονομία Διάλεξη 7η: Consumer Behavior Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών Τέλος Ενότητας Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί
ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 11/3/2006
ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 11/3/26 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Ολοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα μικρότεροι το 1 εκτός αν ορίζεται διαφορετικά στη διατύπωση
Είναι μια αλληλουχία κατάλληλων οδηγιών(εντολών) που εκτελεί ο υπολογιστής για την επίλυση ενός προβλήματος.
Û ØÓÒ ÔÖÓ Ö ÑÑ Ø Ñ ¾ Ç Ö ÐÓ ØÛÒ ÙÔÓÐÓ ØôÒ Ο υπολογιστής είναι εργαλείο επίλυσης προβλημάτων λόγω: ταχύτητας υπολογισμού και μεγέθους μνήμης γενικής χρησιμότητας μέσω της έννοιας του προγραμματισμού. Η
Capacitors - Capacitance, Charge and Potential Difference
Capacitors - Capacitance, Charge and Potential Difference Capacitors store electric charge. This ability to store electric charge is known as capacitance. A simple capacitor consists of 2 parallel metal
Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών
Εισαγωγή στη γλώσσα προγραμματισμού JAVA Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Το πρώτο φλιτζάνι Java Λίστα με τα απαραίτητα Το πρώτο μου πρόγραμμα(hello World) Συνεχίζοντας
Εικονική Αναπαράσταση Νοηµατικής Γλώσσας στο ιαδίκτυο
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Εικονική Αναπαράσταση Νοηµατικής Γλώσσας στο ιαδίκτυο ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ
ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2
ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 5ο μάθημα:αρχές, ιδιότητες αρχιτεκτονικού συνόλου εντολών (ISA) Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Εσωτερική αποθήκευση
Ordinal Arithmetic: Addition, Multiplication, Exponentiation and Limit
Ordinal Arithmetic: Addition, Multiplication, Exponentiation and Limit Ting Zhang Stanford May 11, 2001 Stanford, 5/11/2001 1 Outline Ordinal Classification Ordinal Addition Ordinal Multiplication Ordinal
Lecture 2: Dirac notation and a review of linear algebra Read Sakurai chapter 1, Baym chatper 3
Lecture 2: Dirac notation and a review of linear algebra Read Sakurai chapter 1, Baym chatper 3 1 State vector space and the dual space Space of wavefunctions The space of wavefunctions is the set of all
Writing kernels for fun and profit
Writing kernels for fun and profit Γιάννης Τσιομπίκας nuclear@memberfsforg 23 Μαρτίου 2011 Γιατί; It s FUN! Εξοικείωση με το hardware Εμβάθυνση στον θαυμαστό κόσμο των λειτουργικών συστημάτων Μια καλή
ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 24/3/2007
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Όλοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα μικρότεροι του 10000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Αν κάπου κάνετε κάποιες υποθέσεις
14 Lesson 2: The Omega Verb - Present Tense
Lesson 2: The Omega Verb - Present Tense Day one I. Word Study and Grammar 1. Most Greek verbs end in in the first person singular. 2. The present tense is formed by adding endings to the present stem.
ΕΠΛ605 Εργασία 1 Ημερομηνία Παράδοσης 12/9/2018 στην αρχή του μαθήματος
ΕΠΛ605 Εργασία 1 Ημερομηνία Παράδοσης 12/9/2018 στην αρχή του μαθήματος Ε.1 Σας δίνεται ο πιο κάτω κώδικας. Ξαναγράψτε τον ώστε να μειωθεί ο αριθμός των εντολών του αλλά διατηρώντας την ίδια λειτουργιά
Εργαστήριο Αρ. 1. Εισαγωγή στην Αρχιτεκτονική MIPS. Πέτρος Παναγή Σελ. 1
Εργαστήριο Αρ. 1 Εισαγωγή στην Αρχιτεκτονική MIPS Πέτρος Παναγή Σελ. 1 Πώς Δημιουργείτε ένα Executable Αρχείο Source File: Ένα TEXT αρχείο με τον πυγαίο κώδικα. Assemble: Μεταφράζει τις assembly εντολές
PARTIAL NOTES for 6.1 Trigonometric Identities
PARTIAL NOTES for 6.1 Trigonometric Identities tanθ = sinθ cosθ cotθ = cosθ sinθ BASIC IDENTITIES cscθ = 1 sinθ secθ = 1 cosθ cotθ = 1 tanθ PYTHAGOREAN IDENTITIES sin θ + cos θ =1 tan θ +1= sec θ 1 + cot
Εισαγωγή στην Πληροφορική
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 8: Λειτουργικά Συστήματα Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά
Μηχανική Μάθηση Hypothesis Testing
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Μηχανική Μάθηση Hypothesis Testing Γιώργος Μπορμπουδάκης Τμήμα Επιστήμης Υπολογιστών Procedure 1. Form the null (H 0 ) and alternative (H 1 ) hypothesis 2. Consider
1. Ξεκινώντας. 1.1 Τι είναι η Java. PDF created with FinePrint pdffactory Pro trial version
1. Ξεκινώντας Τελειώνοντας αυτό το κεφάλαιο θα μπορείτε: Να περιγράψετε τα κύρια χαρακτηριστικά της γλώσσας Java Να περιγράψετε τη Java Virtual Machine Να περιγράψετε πώς λειτουργεί ο μηχανισμός «συλλογής
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #1 η : Εισαγωγή: Λογισμικό, Γλώσσες Προγραμματισμού, Java
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #1 η : Εισαγωγή: Λογισμικό, Γλώσσες Προγραμματισμού, Java Γαβαλάς Δαμιανός dgavalas@aegean.gr Στόχοι μαθήματος Διάκριση και κατανόηση των υφιστάμενων
ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY 21 ος ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δεύτερος Γύρος - 30 Μαρτίου 2011
Διάρκεια Διαγωνισμού: 3 ώρες Απαντήστε όλες τις ερωτήσεις Μέγιστο Βάρος (20 Μονάδες) Δίνεται ένα σύνολο από N σφαιρίδια τα οποία δεν έχουν όλα το ίδιο βάρος μεταξύ τους και ένα κουτί που αντέχει μέχρι
Μετάφραση ενός Προγράμματος Εξαιρέσεις
ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι Διάλεξη 7 Μετάφραση ενός Προγράμματος Εξαιρέσεις Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Στάδια μετάφρασης ενός προγράμματος
ΕΙΣΑΓΩΓΗ ΣΤΗ ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ
ΕΙΣΑΓΩΓΗ ΣΤΗ ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΕΛΕΝΑ ΦΛΟΚΑ Επίκουρος Καθηγήτρια Τµήµα Φυσικής, Τοµέας Φυσικής Περιβάλλοντος- Μετεωρολογίας ΓΕΝΙΚΟΙ ΟΡΙΣΜΟΙ Πληθυσµός Σύνολο ατόµων ή αντικειµένων στα οποία αναφέρονται
Αναπτύσσοντας developer tools στην Αpple. Αργύριος Κυρτζίδης Προπτυχιακός φοιτητής ΗΜΜΥ
Αναπτύσσοντας developer tools στην Αpple Αργύριος Κυρτζίδης Προπτυχιακός φοιτητής ΗΜΜΥ Apple Inc. Apple Inc. Από τις μεγαλύτερες τεχνολογικές εταιρίες Apple Inc. Από τις μεγαλύτερες τεχνολογικές εταιρίες
και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath
O επεξεργαστής: Η δίοδος δεδοµένων (path) και η µονάδα ελέγχου (control) Σχεδίαση path 4 κατηγορίες εντολών: Αριθµητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη µνήµη (lw, sw) I
Fourier Series. MATH 211, Calculus II. J. Robert Buchanan. Spring Department of Mathematics
Fourier Series MATH 211, Calculus II J. Robert Buchanan Department of Mathematics Spring 2018 Introduction Not all functions can be represented by Taylor series. f (k) (c) A Taylor series f (x) = (x c)
Αρχιτεκτονικη υπολογιστων
ΤΕΙ Κρήτης Τμ. Μηχανικών Πληροφορικής Αρχιτεκτονικη υπολογιστων Τζαγκαράκης Χαράλαμπος hatzagarak@cs.teicrete.gr Εισαγωγη: ο επεξεργαστης και η γλωσσα του Eπεξεργαστής: MIPS Microprocessor Without Interlocked
Αντισταθμιστική ανάλυση
Αντισταθμιστική ανάλυση Θεωρήστε έναν αλγόριθμο Α που χρησιμοποιεί μια δομή δεδομένων Δ : Κατά τη διάρκεια εκτέλεσης του Α η Δ πραγματοποιεί μία ακολουθία από πράξεις. Παράδειγμα: Θυμηθείτε το πρόβλημα
Partial Differential Equations in Biology The boundary element method. March 26, 2013
The boundary element method March 26, 203 Introduction and notation The problem: u = f in D R d u = ϕ in Γ D u n = g on Γ N, where D = Γ D Γ N, Γ D Γ N = (possibly, Γ D = [Neumann problem] or Γ N = [Dirichlet
Data-Level Parallelism Linking & Loading
ΗΥ 232 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Διάλεξη 18 Data-Level Parallelism Linking & Loading Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Οργάνωση Η/Y (ECE 232) 1
Α. Ερωτήσεις Ανάπτυξης
οµηµένος Προγραµµατισµός-Κεφάλαιο 7 Σελίδα 1 α ό 10 ΕΝΟΤΗΤΑ ΙΙΙ (ΠΡΟΓΡΑΜΜΑΤΑ) ΚΕΦΑΛΑΙΟ 7: Είδη, Τεχνικές και Περιβάλλοντα Προγραµµατισµού Α. Ερωτήσεις Ανάπτυξης 1. Τι ονοµάζουµε γλώσσα προγραµµατισµού;
Οντοκεντρικός Προγραμματισμός
Οντοκεντρικός Προγραμματισμός Ενότητα 5: H ΓΛΩΣΣΑ C++ Διαφορές Java και C++ ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής ΔΙΑΦΟΡΕΣ JAVA C++ Η
Math221: HW# 1 solutions
Math: HW# solutions Andy Royston October, 5 7.5.7, 3 rd Ed. We have a n = b n = a = fxdx = xdx =, x cos nxdx = x sin nx n sin nxdx n = cos nx n = n n, x sin nxdx = x cos nx n + cos nxdx n cos n = + sin
ΑΝΙΧΝΕΥΣΗ ΓΕΓΟΝΟΤΩΝ ΒΗΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΕΠΙΤΑΧΥΝΣΙΟΜΕΤΡΩΝ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΕΠΙΚΟΙΝΩΝΙΩΝ ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΙΧΝΕΥΣΗ ΓΕΓΟΝΟΤΩΝ ΒΗΜΑΤΙΣΜΟΥ ΜΕ ΧΡΗΣΗ ΕΠΙΤΑΧΥΝΣΙΟΜΕΤΡΩΝ
Lecture 2. Soundness and completeness of propositional logic
Lecture 2 Soundness and completeness of propositional logic February 9, 2004 1 Overview Review of natural deduction. Soundness and completeness. Semantics of propositional formulas. Soundness proof. Completeness
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον κεφ.6 Εισαγωγή στον Προγραμματισμό
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον κεφ.6 Εισαγωγή στον Προγραμματισμό Μάριος Αραποστάθης Καθηγητής πληροφορικής Βαρβάκειου Λύκειου http://users.sch.gr/mariosarapostathis 6.1 Η έννοια του
If we restrict the domain of y = sin x to [ π, π ], the restrict function. y = sin x, π 2 x π 2
Chapter 3. Analytic Trigonometry 3.1 The inverse sine, cosine, and tangent functions 1. Review: Inverse function (1) f 1 (f(x)) = x for every x in the domain of f and f(f 1 (x)) = x for every x in the
Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.
Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση:
Επιτεύγµατα των Λ.Σ.
Επιτεύγµατα των Λ.Σ. ιεργασίες ιαχείριση Μνήµης Ασφάλεια και προστασία δεδοµένων Χρονοπρογραµµατισµός & ιαχείρηση Πόρων οµή Συστήµατος ιεργασίες Ένα πρόγραµµα σε εκτέλεση Ένα στιγµιότυπο ενός προγράµµατος
Inverse trigonometric functions & General Solution of Trigonometric Equations. ------------------ ----------------------------- -----------------
Inverse trigonometric functions & General Solution of Trigonometric Equations. 1. Sin ( ) = a) b) c) d) Ans b. Solution : Method 1. Ans a: 17 > 1 a) is rejected. w.k.t Sin ( sin ) = d is rejected. If sin
ST5224: Advanced Statistical Theory II
ST5224: Advanced Statistical Theory II 2014/2015: Semester II Tutorial 7 1. Let X be a sample from a population P and consider testing hypotheses H 0 : P = P 0 versus H 1 : P = P 1, where P j is a known
ΕΠΛ 233: Αντικειμενοστρεφής Προγραμματισμός (Object-oriented programming)
ΕΠΛ 233: Αντικειμενοστρεφής Προγραμματισμός (Object-oriented programming) Πληροφορίες Μαθήματος Διαλέξεις Δευτέρα, Πέμπτη 10:30-12:00 Κτήριο ΘΕΕ01, Αίθουσα 202 Εργαστήριο Τετάρτη 10:30-12:00, Κτήριο ΘΕΕ01,
Elements of Information Theory
Elements of Information Theory Model of Digital Communications System A Logarithmic Measure for Information Mutual Information Units of Information Self-Information News... Example Information Measure
ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση
ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση Αρης Ευθυμίου Ανακοινώσεις! Βαθμοί: 1ης εργαστηριακής άσκησης Βαθμός 0 χωρίς σχόλια δεν έχω πάρει την άσκηση! ελέγξτε μήπως δεν το στέλνετε στο σωστό