Τεχνικές μεταγλώττισης - Αποσφαλμάτωση
|
|
- Ναθαναήλ Μπλέτσας
- 7 χρόνια πριν
- Προβολές:
Transcript
1 - Τεχνικές ς Τεχνικές μεταγλώττισης - Νίκος Νικολουτσάκος ΕΔΕΤ nikoloutsa [at] grnet.gr Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
2 Περιεχόμενα - Τεχνικές ς 1 Τεχνικές ς 2 Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
3 - Τεχνικές ς Κειμενογράφοι : vi, vim, nano Προγραμματισμός: C, C++, Fortran Script: perl, bash, Octave Μετταγλωτιστές: INTEL, GCC, PGI Παραλληλία: Intel MPI, OpenMPI Make: make, cmake : gdb, gdb-ia, pgdbg, ddd Profilers: gprof, pgprof, VTune, Scalasca, mpip Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
4 - Τεχνικές ς Διαθέσιμοι Language GNU INTEL PGI File Extension C gcc icc pgcc.c C++ g++ icpc pgc++.cpp.cc.c.cxx Fortran gfortran ifort pgfortran.f.for.ftn.f90.fpp MPI flavor module execute Intel MPI intelmpi srun OpenMPI openmi srun Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
5 Intelmpi I - Τεχνικές ς Launcher srun Language C C++ Fortran wrapper mpiicc mpiicpc mpifort Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
6 Intelmpi II - (gnu) mpicc -show Τεχνικές ς (intel) mpiicc -show Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
7 OpenMPI I - Τεχνικές ς Launcher srun Language C C++ Fortran wrapper mpicc mpicxx mpifort (mpif90 deprecated) Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
8 OpenMPI II - intel module load openmpi/1.8.7/intel Τεχνικές ς mpicc -show Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
9 OpenMPI III - gnu module load openmpi/1.8.7/gnu Τεχνικές ς mpicc -show Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
10 - Τεχνικές ς Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
11 - Τεχνικές ς -c Παραγωγή object αρχείων, χωρίς ομως σύνδεση (linking) -o Όνομα εκτελέσιμου -g Παράγει πληροφορίες αποσφαλμάτωσης. -D[name] Ορίζει το macro στον προεπεξεργαστή. -I[dir] Αναζητεί αρχεία στον κατάλογο dir κατά τη μεταγλώττιση. -l[lib] Σύνδεση με βιβλιοθήκη lib. -static Υποχρεώνει στατική σύνδεση. -L[dir] Αναζητεί αρχεία βιβλιοθηκών στον κατάλογο dir κατά τη σύνδεση. -fpic Παράγει position-independent. -version,-v Προβάλει την έκδοση του μεταγλωττιστή. -help,-h Πληροφορίες βοήθειας. -std= Συμμόρφωση με πρότυπο standard. Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
12 - Τεχνικές ς include dir gcc -I/path/to/include main.c gcc -I$MYPATH main.c Find the paths module show fftw/2.1.5 Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
13 - gcc main.c -lfoo Τεχνικές ς gcc -L/path/to/lib main.c -lfoo echo $LD_LIBRARY_PATH Runtime libraries ldd a.out Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
14 - Τεχνικές ς Επλογές του μεταγλωττιστή -O0 Απενεργοποίηση βελτιστοποιήσεων -O1 Βελτιστοποιήσεις ως προς μέγεθος -O2 Βελτιστοποίηση ως προς ταχύτητα -O3 Πλήρες επίπεδο -Ofast Πιο επιθετική βελτιστοποίηση Intel Reference The /O3 (-O3) option is particularly recommended for applications that have loops that do many floating-point calculations or process large data sets. These aggressive optimizations may occasionally slow down other types of applications compared to /O2 (-O2). Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
15 - Τεχνικές ς gcc help=optimizers icc help opt Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
16 - gcc -Q -O3 help=optimizers icc help advanced Τεχνικές ς Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
17 - Τεχνικές ς για συγκεκριμένο επεξεργαστή -march=native Βελτιστοποίηση για συγκεκριμένο επεξεργαστή -mtune=native Intel icc -xhost gcc -c -Q -march=native help=target -m[target] Enable use of instructions sets, -mavx,... Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
18 - Τεχνικές ς Επιλογή GNU -O[0-3] -Os -Ofast -mtune,-march=native -funroll-loops -finline-functions -fstrict-aliasing Επιλογή INTEL -O[0-3] -Os -fast -xhost -unroll/-unroll-agressive -ip, ip0 -fno-alias Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
19 - Τεχνικές ς Loop Unrolling unrolling inner loops hides floating point latency original for (int x=0; x < 100; x++) { func(x); } optimized for (int x = 0; x < 100; x+=5) { func(x); func(x+1); func(x+2); func(x+3); func(x+4); } Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
20 - Τεχνικές ς Loop Colapsing original int a[100][300]; for (int i = 0; i < 300; i++) for (int j = 0; j < 100; j++) a[j][i] = 0; optimized int a[100][300]; int *p = &a[0][0]; for (int i = 0; i < 30000; i++) *p++ = 0; Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
21 Inline functions - Τεχνικές ς original int func(int &x,int &y) { return 4*x+3*y; } int main(){ int x=4, y=3; int b=fun(x,y) } optimized int main(){ int x=4,y=3; int b= 4*x+3*y; } inline keyword suggests (but does not require) MACRO #define FUN(x,y) 4*x+3*y increase code space Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
22 - Τεχνικές ς Branch Elimination if ( x < x1 ) { a = a0 + a1; } else if ( x < x2 ) { a = a0 - a1; } else if ( x < x3 ) { a = a0 * a1; } else { a = a0; } static branch elimination compute all cases and conditions, then pick the correct replace with switch statements, jumbe tables branch re-alignment Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
23 - Τεχνικές ς original Loop Fusion int x[100], y[100]; for (int i = 0; i < 100; i++) x[i] = 1; for (int i = 0; i < 100; i++) y[i] = 2; optimized int x[100], y[100]; for (int i = 0; i < 100; i++) { x[i] = 1; y[i] = 2; } Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
24 - Τεχνικές ς original Loop Peeling int p = 10; for (int i=0; i<10; ++i) { y[i] = x[i] + x[p]; p = i; } optimized y[0] = x[0] + x[10]; for (int i=1; i<10; ++i) { y[i] = x[i] + x[i-1]; } Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
25 Memory Tuning I - Τεχνικές ς Cache reuse Fortran (column-wise) Real*8 :: a(m,n), b(m,n), c(m,n)... do i=1,n do j=1,m a(j,i)=b(j,i)+c(j,i) end do end do C (row-wise) double a[m][n], b[m][n], c[m][n];... for (i=0;i <m;i++){ for (j=0;j <n;j++){ a[i][j]=b[i][j]+c[i][j]; } } Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
26 Memory Tuning II - Prefetching (predict next cache line) Τεχνικές ς 2 stream do i=1,n s=s+x(i)*y(i) end do dotp=s 4 stream do i=1,n/2 s0=s0+x(i)*y(i) s1=s1+x(i+n/2)*y(i+n/2) end do dotp=s0+s1 6 stream do i=1,n/3 s0=s0+x(i)*y(i) s1=s1+x(i+n/3)*y(i+n/3) s2=s2+x(i+2*n/3)*y(i+2* n/3) end do do i=3*(n/3)+1,n s0=s0+x(i)*y(i) end do dotp=s0+s1+s2 Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
27 Memory Tuning III - Τεχνικές ς cache blocking Real*8 a(n,n), b(n,n), c(n,n) do ii=1,n,nb! < nb is blocking factor do jj=1,n,nb do kk=1,n,nb do i=ii,min(n,ii+nb-1) do j=jj,min(n,jj+nb-1) do k=kk,min(n,kk+nb-1) c(i,j)=c(i,j)+a(j,k)*b(k,i) end do end do end do end do end do end do Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
28 - Τεχνικές ς gdb GNU Debugger αποσφαλμάτωση, έλεγχος λαθών: segmantation faults, floating point exception κλπ Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
29 - Τεχνικές ς gcc [flags] <source file> -o <output file> -Wall, -Wextra: Ενεργοποιεί προειδοποίηση πιθανών σφάλμα -Werror: Μετατρέπει προειδοποίηση σε σφάλμα. -Wfatal-errors: Τερματίζει μεταγλώττιση μετά το πρώτο σφάλμα. Debug info gcc [flags] -g <source file> -o <output file> -g: Παράγει πληροφορία αποσφαλμάτωσης -ggdb: Παράγει πληροφορία αποσφαλμάτωσης για Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
30 - Command gdb <prog name> or gdb (gdb) Τεχνικές ς (gdb) file <prog name> Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
31 - (gdb) help <command> Τεχνικές ς Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
32 - (gdb) help run Τεχνικές ς Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
33 Εκτέλεση - (gdb) run Τεχνικές ς Εκτέλεση του μέχρι να κρασάρει Προσθήκη breakpoints Έλεγχος δεδομένων Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
34 - (gdb) break main.c:6 (gdb) break my_function Τεχνικές ς (gdb) continue (gdb) step (gdb) next (gdb) print <var> (gdb) watch <var> (gdb) list Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
35 Παράδειγμα - Τεχνικές ς # i n c l u d e < s t d i o. h> # i n c l u d e < s t d l i b. h> i n t mydiv ( i n t, i n t ) ; i n t main ( void ) { i n t res, x = 5, y ; f o r ( y = 1; y < 10; y++) { res = mydiv ( x, y ) ; p r i n t f ( %d,%d,%d \ n, x, y, res ) ; } r e t u r n 0; } i n t mydiv ( i n t x, i n t y ) { r e t u r n 1 / ( x y ) ; } PROGRAM main INTEGER : : mydiv INTEGER : : res, x = 5, y DO y = 1, 10 res = mydiv ( x, y ) WRITE ( *, * ) x, y, res END DO END PROGRAM FUNCTION mydiv ( x, y ) INTEGER, INTENT ( IN ) : : x, y mydiv = 1 / ( x y ) RETURN END FUNCTION mydiv Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
36 - Τεχνικές ς gcc -g divcrash.c gdb./a.out gfortran -g divcras.f90 gdb./a.out (gdb) run Program received signal SIGFPE, Arithmetic exception. 0x in mydiv () Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
37 I - (gdb) shell ls -l Τεχνικές ς (gdb) attach pid (gdb) shell ps -eo pid,comm Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
38 II - (gdb) attach Τεχνικές ς (gdb) backtrace Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
39 - Τεχνικές ς (gdb) core <core> snapshot (gdb) generate-core-file Valgrid: memory leaks Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
40 - Τεχνικές ς gdb-ia Intel Debugger αποσφαλμάτωση, έλεγχος λαθών: segmantation faults κλπ module intel Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
41 - Τεχνικές ς ddd Data Display Debugger Γραφικό περιβάλλον αποσφαλμάτωση, έλεγχος λαθών: segmantation faults κλπ gui vs gdb tui Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
42 - ddd <prog name> Τεχνικές ς Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
43 - Τεχνικές ς Line: Right Click Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
44 - Program -> Run Τεχνικές ς Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
45 - Τεχνικές ς GCC, the GNU Compiler Collection Options That Control Optimization Intel Developer Zone, Intel 64 and IA-32 Architectures Optimization Reference Manual, 2014 PRACE Best Practice Guide - Generic x86 : The GNU Project Debugger Debugging with gdb - Data Display Debugger Debugging with ddd Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, Σεπ /45
Εισαγωγή Βασικές εντολές Εκτέλεση βήµα-βήµα Εξέταση/Ανάθεση GDB-101. Νίκος Ντάρµος Τµήµα Πληροφορικής Πανεπιστήµιο Ιωαννίνων
Νίκος Ντάρµος Τµήµα Πληροφορικής Πανεπιστήµιο Ιωαννίνων Ιωάννινα, Μάιος 2010 Βασικές λειτουργίες ενός debugger: Εκτέλεση προγράµµατος ϐήµα-ϐήµα. Παρακολούθηση τιµών µεταβλητών. Εξέταση
Διαβάστε περισσότεραGprof - Scalasca - VTune
- - VTune Νίκος Νικολουτσάκος ΕΔΕΤ nikoloutsa [at] grnet.gr http://doc.aris.grnet.gr/development/ #performance-analysis Εκπαιδευτικό Σεμινάριο ARIS Θεσσαλονίκη, 28-29 Σεπ. 2015 1/35 1 2 3 4 5 6 Εκπαιδευτικό
Διαβάστε περισσότεραGprof - Scalasca - VTune
- - VTune Νίκος Νικολουτσάκος ΕΔΕΤ nikoloutsa [at] grnet.gr http://doc.aris.grnet.gr/development/ #performance-analysis Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, 14-16 Σεπ. 2015 1/35 1 2 3 4 5 6 Εκπαιδευτικό
Διαβάστε περισσότεραEPL475:Εργαστήριο 5, GDB
EPL475:Εργαστήριο 5, GDB Στο σημερινό εργαστήριο θα χρησιμοποιήσουμε το εργαλείο gdb για αποσφαλμάτωση. Με το τέλος αυτού του εργαστήριου οι φοιτητές θα μπορούν να: Να φορτώνουν εκτελέσιμο αρχείο στον
Διαβάστε περισσότεραΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ενότητα 12: Συνοπτική Παρουσίαση Ανάπτυξης Κώδικα με το Matlab Σαμαράς Νικόλαος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραVBA ΣΤΟ WORD. 1. Συχνά, όταν ήθελα να δώσω ένα φυλλάδιο εργασίας με ασκήσεις στους μαθητές έκανα το εξής: Version 25-7-2015 ΗΜΙΤΕΛΗΣ!!!!
VBA ΣΤΟ WORD Version 25-7-2015 ΗΜΙΤΕΛΗΣ!!!! Μου παρουσιάστηκαν δύο θέματα. 1. Συχνά, όταν ήθελα να δώσω ένα φυλλάδιο εργασίας με ασκήσεις στους μαθητές έκανα το εξής: Εγραφα σε ένα αρχείο του Word τις
Διαβάστε περισσότεραΠρογραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΟ ΚΕΝΤΡΟ Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού Μάθημα 2ο Aντώνης Σπυρόπουλος v2_061015 Οροι που
Διαβάστε περισσότεραFORTRAN και Αντικειμενοστραφής Προγραμματισμός
FORTRAN και Αντικειμενοστραφής Προγραμματισμός Παραδόσεις Μαθήματος 2016 Δρ Γ Παπαλάμπρου Επίκουρος Καθηγητής ΕΜΠ georgepapalambrou@lmentuagr Εργαστήριο Ναυτικής Μηχανολογίας (Κτίριο Λ) Σχολή Ναυπηγών
Διαβάστε περισσότεραΠρογραμματισμός Ι. Πολλαπλά Αρχεία. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Πολλαπλά Αρχεία Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Πολλαπλά Αρχεία Όταν γράφουμε μεγάλα προγράμματα θέλουμε να έχουμε ανεξάρτητα κομμάτια κώδικα
Διαβάστε περισσότεραΔιάλεξη 22η: Επιπλέον στοιχεία της C
Διάλεξη 22η: Επιπλέον στοιχεία της C Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Πρατικάκης (CSD) Extra CS100, 2018-2019 1 / 11 Οργάνωση του κώδικα Ένα πρόγραμμα
Διαβάστε περισσότεραΔιάλεξη 17: Έλεγχος Λογισμικού
Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 17: Έλεγχος Λογισμικού (Κεφάλαιο 24.1-24.2, KNK-2ED) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 17-1 Μεγάλης
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 133: ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΡΓΑΣΤΗΡΙΟ 3 Javadoc Tutorial
ΕΡΓΑΣΤΗΡΙΟ 3 Javadoc Tutorial Introduction Το Javadoc είναι ένα εργαλείο που παράγει αρχεία html (παρόμοιο με τις σελίδες στη διεύθυνση http://docs.oracle.com/javase/8/docs/api/index.html) από τα σχόλια
Διαβάστε περισσότεραΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στην FORTRAN Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 Fortran FORmula TRANslation: (Μία από τις πρώτες γλώσσες τρίτης γενιάς) Εκδόσεις FORTRAN (1957) FORTRAN II (1958) FORTRAN III
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I
ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I MIPS Η MIPS (Microprocessor without Interlocked Pipeline Stages) είναι μία αρχιτεκτονική συνόλου εντολών (ISA) γλώσσας μηχανής που αναπτύχθηκε από την εταιρεία
Διαβάστε περισσότεραWriting kernels for fun and profit
Writing kernels for fun and profit Γιάννης Τσιομπίκας nuclear@memberfsforg 23 Μαρτίου 2011 Γιατί; It s FUN! Εξοικείωση με το hardware Εμβάθυνση στον θαυμαστό κόσμο των λειτουργικών συστημάτων Μια καλή
Διαβάστε περισσότεραΕνσωματωμένα Συστήματα
Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Διαβάστε περισσότεραΠρογραμματισμός Ι (ΗΥ120)
Προγραμματισμός Ι (ΗΥ120) Διάλεξη 18: Ο προεπεξεργαστής της C. Βασική ιδέα Ο προεπεξεργαστής (pre-proccesor) της C είναι ένα πρόγραμμα που εκτελείται και μετασχηματίζει τον πηγαίο κώδικα πριν αυτός δοθεί
Διαβάστε περισσότεραCS255 - Programming Lab
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ CS255 - Programming Lab Ενότητα: Tutorials Άγγελος Μπίλας Τμήμα Επιστήμης Υπολογιστών Tutorial 3 - GDB Basics GDB, the GNU Project debugger, allows you to see what
Διαβάστε περισσότεραHancock. Ζωγραφάκης Ιωάννης Εξαρχάκος Νικόλαος. ΕΠΛ 428 Προγραμματισμός Συστημάτων
Hancock Ζωγραφάκης Ιωάννης Εξαρχάκος Νικόλαος Χ346339 Τ911778 ΕΠΛ 428 Προγραμματισμός Συστημάτων Ιστορική Αναδρομή Δημιουργήθηκε από την εταιρεία ΑΤ&Τ LAB Αφορμή δημιουργίας: Η ανάγκη για καθαρό και αποδοτικό
Διαβάστε περισσότεραΕισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών
Εισαγωγή στη γλώσσα προγραμματισμού JAVA Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Το πρώτο φλιτζάνι Java Λίστα με τα απαραίτητα Το πρώτο μου πρόγραμμα(hello World) Συνεχίζοντας
Διαβάστε περισσότεραΔομημένος Προγραμματισμός (ΤΛ1006)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής
Διαβάστε περισσότεραΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Εργαστήριο Αρ. 2
ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Εργαστήριο Αρ. 2 Εισαγωγή στην Αρχιτεκτονική ARMv8-A Arithmetic and Logic Instr..data, Branch and Loops, PhD Σελ. 1 Memory Allocation LEGv8 0000
Διαβάστε περισσότεραΜερικές άλλες χρήσιμες εντολές
1 Μερικές άλλες χρήσιμες εντολές whoami (Εμφανίζει το όνομα του τρέχοντος χρήστη) pwd (Εμφανίζει το όνομα του τρέχοντος καταλόγου) cat text file name (Παρουσιάζει στην οθόνη το περιεχόμενο ενός αρχείου
Διαβάστε περισσότεραΠρογραμματισμός Ι. Προεπεξεργαστής. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Προεπεξεργαστής Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Διαδικασία Μεταγλώττισης πρόγραµµα επεξεργασίας κειµένου if a
Διαβάστε περισσότεραΑναπτύσσοντας developer tools στην Αpple. Αργύριος Κυρτζίδης Προπτυχιακός φοιτητής ΗΜΜΥ
Αναπτύσσοντας developer tools στην Αpple Αργύριος Κυρτζίδης Προπτυχιακός φοιτητής ΗΜΜΥ Apple Inc. Apple Inc. Από τις μεγαλύτερες τεχνολογικές εταιρίες Apple Inc. Από τις μεγαλύτερες τεχνολογικές εταιρίες
Διαβάστε περισσότεραΗ γλώσσα προγραμματισμού C
Η γλώσσα προγραμματισμού C Εισαγωγή στη C Λίγα λόγια για την C Γλώσσα προγραμματισμού υψηλού επιπέδου. Σχεδιάστηκε και υλοποιήθηκε από τον Dennis Richie στις αρχές της δεκαετίας του 1970 (Bell Labs). Η
Διαβάστε περισσότεραΠρογραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Κλάσεις και Αντικείμενα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Κλάσεις Η γενική μορφή μιας κλάσης είναι η εξής: class class-name { private data and
Διαβάστε περισσότεραΑΣΚΗΣΗ 1: TO ΠΕΡΙΒΑΛΛΟΝ ΕΡΓΑΣΙΑΣ DEV-C++
ΑΣΚΗΣΗ 1: TO ΠΕΡΙΒΑΛΛΟΝ ΕΡΓΑΣΙΑΣ DEV-C++ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η εξοικείωση με τη χρήση του περιβάλλοντος Dev C++ το οποίο θα χρησιμοποιηθεί για την υλοποίηση
Διαβάστε περισσότεραΜερικές άλλες χρήσιμες εντολές
1 Μερικές άλλες χρήσιμες εντολές whoami (Εμφανίζει το όνομα του τρέχοντος χρήστη) pwd (Εμφανίζει το όνομα του τρέχοντος καταλόγου) less (Το ίδιο με την εντολή «cat», αλλά επιτρέπει την κύλιση στο κείμενο.
Διαβάστε περισσότεραΣυστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 1: OpenMPI Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
Διαβάστε περισσότεραΑνάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2)
Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Οργάνωση Προγράµµατος Header Files Μετάφραση και σύνδεση αρχείων προγράµµατος ΕΠΛ 132 Αρχές Προγραµµατισµού
Διαβάστε περισσότεραΘΕΜΑ PROJECT COMPILER FLAGS ΤΡΑΧΑΝΗΣ ΔΗΜΗΤΡΗΣ 6108 ΤΡΑΧΑΝΗΣ ΓΕΩΡΓΙΟΣ 5789
ΘΕΜΑ PROJECT COMPILER FLAGS ΤΡΑΧΑΝΗΣ ΔΗΜΗΤΡΗΣ 6108 ΤΡΑΧΑΝΗΣ ΓΕΩΡΓΙΟΣ 5789 Γενικά Οι compilers προσφέρουν μία σειρά από τεχνικές βελτιστοποίησης Στόχοι: Αύξηση ταχύτητας εκτέλεσης Μείωση μεγέθους Εφικτές
Διαβάστε περισσότεραΚεφάλαιο 2.1-2.4: Εισαγωγή στην C: (Διαλέξεις 3-4)
Κεφάλαιο 2.1-2.4: Εισαγωγή στην C (Διαλέξεις 3-4) Περιεχόμενα Εισαγωγή στην C: Σύνταξη και Σημασιολογία σχόλια μεταβλητές και σταθερές τύποι δεδομένων Μετά αυτές τις δυο διαλέξεις θα μπορείτε να γράψετε
Διαβάστε περισσότεραΠροεπεξεργαστής της C. C Preprocessor. Προγραμματισμός II 1
Προεπεξεργαστής της C C Preprocessor Προγραμματισμός II 1 lalis@inf.uth.gr Τι κάνει ο προεπεξεργαστής; Ο προεπεξεργαστής (pre-proccesor) της C είναι ένα πρόγραμμα που μετασχηματίζει τον πηγαίο κώδικα προτού
Διαβάστε περισσότεραFORTRAN και Αντικειμενοστραφής Προγραμματισμός
FORTRAN και Αντικειμενοστραφής Προγραμματισμός Παραδόσεις Μαθήματος 2016 Δρ Γ Παπαλάμπρου Επίκουρος Καθηγητής ΕΜΠ georgepapalambrou@lmentuagr Εργαστήριο Ναυτικής Μηχανολογίας (Κτίριο Λ) Σχολή Ναυπηγών
Διαβάστε περισσότεραΕισαγωγή στο προγραμματιστικό περιβάλλον ANSI
Εργαστήριο 1ο Εισαγωγή στο προγραμματιστικό περιβάλλον ANSI Σε αυτό το κεφάλαιο θα ασχοληθούμε με την περιγραφή της διαδικασίας μεταγλώττισης ενός προγράμματος C κάνοντας χρήση του μεταγλωττιστή gcc σε
Διαβάστε περισσότεραΕνσωματωμένα Συστήματα
Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 6 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Διαβάστε περισσότεραΕργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 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
Διαβάστε περισσότεραmake Προγραμματισμός II 1
make Προγραμματισμός II 1 lalis@inf.uth.gr myprog.c preprocessor (cc1) /tmp/cczxt.i assembler (as) compiler (cc1) /tmp/cczxt.o /tmp/cczxt.s linker (ld) myprog Προγραμματισμός II 2 lalis@inf.uth.gr Δοκιμάστε
Διαβάστε περισσότεραΠρογραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Πέμπτη (5 η ) τρίωρη διάλεξη. Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/
Διαβάστε περισσότεραΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Αν κάπου κάνετε κάποιες υποθέσεις να αναφερθούν στη σχετική ερώτηση. Όλα τα αρχεία που αναφέρονται στα προβλήματα βρίσκονται στον ίδιο φάκελο με το εκτελέσιμο
Διαβάστε περισσότεραΚΕΦΑΛΑΙΟ 2. Περιγραφή της Κίνησης. 2.1 Κίνηση στο Επίπεδο
ΚΕΦΑΛΑΙΟ 2 Περιγραφή της Κίνησης Στο κεφάλαιο αυτό θα δείξουμε πώς να προγραμματίσουμε απλές εξισώσεις τροχιάς ενός σωματιδίου και πώς να κάνουμε βασική ανάλυση των αριθμητικών αποτελεσμάτων. Χρησιμοποιούμε
Διαβάστε περισσότεραΜικρή Εισαγωγή στο wxdev-c++
Μικρή Εισαγωγή στο περιβάλλον wxdev-c++ Το wxdev-c++ αποτελεί ένα πλήρες περιβάλλον ανάπτυξης εφαρμογών για την γλώσσα C και C++. Το περιβάλλον είναι ελεύθερο λογισμικό και χρησιμοποιεί μια ειδική έκδοση
Διαβάστε περισσότεραLibrary, package και subprograms
Library, package και subprograms Libraries Packages Subprograms Procedures Functions Overloading Αριθμητικά πακέτα Type conversion Shift operators Παράδειγμα Library - Package Ασκήσεις-Προβλήματα 12/8/2009
Διαβάστε περισσότεραΠρογραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε
Διαβάστε περισσότεραΠαράλληλη Επεξεργασία
Παράλληλη Επεξεργασία Φροντιστήριο: Προετοιμασία για προγραμματισμό στην Παράλληλη Επεξεργασία Τεχνικές και διαθέσιμα εργαλεία Εργαστήριο Πληροφοριακών Συστημάτων Υψηλής Επίδοσης Parallel and Distributed
Διαβάστε περισσότεραΓλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά
Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά Βασικά χαρακτηριστικά αναπτύχθηκε ως επέκταση της C το 1979 υπερσύνολο της C γλώσσα γενικού σκοπού, γρήγορη, Αντικειμενοστραφής προγραμματισμός (Object
Διαβάστε περισσότεραΕΡΓΑΣΤΗΡΙΟ 8: Πολυδιάστατοι Πίνακες και Δυναμική Δέσμευση Μνήμης
ΕΡΓΑΣΤΗΡΙΟ 8: Πολυδιάστατοι Πίνακες και Δυναμική Δέσμευση Μνήμης Στο εργαστήριο αυτό θα μελετήσουμε τον τρόπο με τον οποίο ορίζουμε στην C πολυδιάστατους πίνακες και θα δούμε πώς μπορούμε να δεσμεύουμε
Διαβάστε περισσότεραΔομημένος Προγραμματισμός (ΤΛ1006)
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής
Διαβάστε περισσότεραΔομημένος Προγραμματισμός
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Εισαγωγή στη C θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΣυστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Συστήματα Παράλληλης & Κατανεμημένης Επεξεργασίας Ενότητα 1: OpenMPI Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
Διαβάστε περισσότεραΣτο εργαστήριο θα μελετηθούν: Διδάσκων: Γιώργος Χατζηπολλάς. Εργαστήριο 2: Εργαλεία Συστήματος UNIX. Ομάδες για παρουσίαση
Εργαστήριο 2: Εργαλεία Συστήματος UNIX Στο εργαστήριο θα μελετηθούν: Ομάδες για παρουσίαση sed (Stream EDitor) Παραδείγματα χρήσης sed Διδάσκων: Γιώργος Χατζηπολλάς 2-1 Ομάδες Παρουσίασης Group Name Description
Διαβάστε περισσότεραΕξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή
Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή Δημιουργία Νέου αρχείου Από το μενού προγραμμάτων ανοίγετε το DEV C++ Επιλέγετε File-> New-> Source File (συντόμευση πληκτρολογίου Ctrl+N)
Διαβάστε περισσότεραΔομημένος Προγραμματισμός
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Δομημένος Προγραμματισμός Ενότητα 1: Εισαγωγή Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά Το έργο
Διαβάστε περισσότεραΠρογραμματισμός Ι (ΗΥ120)
Προγραμματισμός Ι (ΗΥ120) Διάλεξη 19: Ο προεπεξεργαστής της C. Βασική ιδέα Ο προεπεξεργαστής (pre-proccesor) της C είναι ένα πρόγραμμα που εκτελείται και μετασχηματίζει τον πηγαίο κώδικα πριν αυτός δοθεί
Διαβάστε περισσότεραΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++
ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++ Α. ΠΡΙΝ ΤΗΝ ΕΓΚΑΤΑΣΤΑΣΗ Το πρόγραμμα BloodShed Dev-C++ είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης* κώδικα για γλώσσες
Διαβάστε περισσότεραΕισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Συναρτήσεις Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Συναρτήσεις Ως τώρα γράφαμε όλα τα προγράμματα μας μέσα στην main..1
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ 032 2 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ Ενδιάμεση Εξέταση Ημερομηνία:08/03/10 Διάρκεια: 13:30 15:00 Διδάσκων: Παύλος Αντωνίου Ονοματεπώνυμο: Αριθμός Ταυτότητας: Η εξέταση
Διαβάστε περισσότεραΕισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Πίνακες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Πίνακες Πολλές φορές θέλουμε να κρατήσουμε στην μνήμη πολλά αντικείμενα
Διαβάστε περισσότεραΔιάλεξη 17: Έλεγχος Λογισµικού
Τµήµα Πληροφορικής Πανεπιστήµιο Κύπρου ΕΠΛ132 Αρχές Προγραµµατισµού II Διάλεξη 17: Έλεγχος Λογισµικού (Κεφάλαιο 24.1-24.2, KNK-2ED) Δηµήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 17-1 Μεγάλης
Διαβάστε περισσότεραΔυναμική μνήμη με πίνακες και λίστες
Δυναμική μνήμη με πίνακες και λίστες Ατζέντα ονομάτων Οι πίνακες βοηθάνε στην εύκολη προσπέλαση, στην σειριοποίηση των δεδομένων για αποθήκευση ή μετάδοση. Απαιτούν ωστόσο είτε προκαταβολική δέσμευση μνήμης
Διαβάστε περισσότεραΔΟΜΗΜΕΝΟΣ ΟΠΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΠAΡΑΘΥΡΙΚΟ ΠΕΡΙΒΑΛΛΟΝ με τη Γλώσσα Προγραμματισμού VISUAL BASIC (1 ο ΕΠΙΠΕΔΟ)
Γενικός Σκοπός Το αναλυτικό πρόγραμμα έχει ως γενικό σκοπό να δώσει στους μαθητές τις απαιτούμενες γνωστικές, κριτικές και αναλυτικές δεξιότητες ώστε να είναι ικανοί να χρησιμοποιούν τους υπολογιστές για
Διαβάστε περισσότεραΛειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά
Διαβάστε περισσότεραΠρογραµµατισµός Ι Εισαγωγή Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Προγραµµατισµός Ι Νικόλαος Δ. Τσελίκας
Εισαγωγή Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Αναδροµή Σύντοµη Αναδροµή Η γλώσσα προγραµµατισµού C είναι µία γλώσσα
Διαβάστε περισσότερα3 &4. Εισαγωγήστη C Ιωάννης Κατάκης
Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων 3 &4. Εισαγωγήστη C Ιωάννης Κατάκης Σήμερα o Εισαγωγή στη C o Σύνταξη και σημασιολογία Σχόλια Μεταβλητές και σταθερές Τύποι δεδομένων Μετά από τις δύο διαλέξεις
Διαβάστε περισσότεραεφαρμογών Συμπεριφορά απόδοσης εφαρμογών Benchmarks, Profiling GRNET ntell [at] grnet.gr Χρονοεπίδοση και αξιολόγηση απόδοσης εφαρμογών
Χρονοεπίδοση Συμπεριφορά Benchmarks, GRNET ntell [at] grnet.gr Εκπαιδευτικό Σεμινάριο ARIS Αθήνα, 14-16 Σεπ. 2015 1/28 Χρονοεπίδοση κλιμάκωση Παράγοντες που επηρεάζουν την επίδοση Αναζήτηση σημείων κώδικα
Διαβάστε περισσότεραΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 2 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών
Διαβάστε περισσότεραΜεταφραστής (Compiler)
Windows Καθαρισµος οθονης cls Unix clear Τελεστες ανακατευθυνσης > > >> >> < < Εντολες σε αρχεια * * (wild card) del Α rm Α ιαγραφη type Α cat Α Εµφανιση copy Α Β cp Α Β Αντιγραφη ren Α Β mv Α Β Αλλαγη
Διαβάστε περισσότεραιδάσκων: ηµήτρης Ζεϊναλιπούρ
Κεφάλαιο 1.3-1.4: Εισαγωγή Στον Προγραµµατισµό ( ιάλεξη 2) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγικές Έννοιες - Ορισµοί Ο κύκλος ανάπτυξης προγράµµατος Παραδείγµατα Πότε χρησιµοποιούµε υπολογιστή?
Διαβάστε περισσότεραΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής
ΕΡΓΑΣΤΗΡΙΟ 9: Συμβολοσειρές και Ορίσματα Γραμμής Εντολής Στο εργαστήριο αυτό θα δούμε πώς ορίζονται και πώς χρησιμοποιούνται οι συμβολοσειρές στην C. Επίσης, θα μελετήσουμε κάποιες από τις συναρτήσεις
Διαβάστε περισσότεραFORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017
FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017 M7 Δομές δεδομένων: Πίνακες - Ασκήσεις Γεώργιος Παπαλάμπρου Επικ. Καθηγητής ΕΜΠ Εργαστήριο Ναυτικής Μηχανολογίας george.papalambrou@lme.ntua.gr ΕΜΠ/ΣΝΜΜ
Διαβάστε περισσότεραΕργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος
Εργαστήριο Οργάνωσης Η/Υ Δαδαλιάρης Αντώνιος dadaliaris@uth.gr Σχόλια: - - This is a single line comment - - There is no alternative way to write multi-line comments Αναγνωριστικά: Τα αναγνωριστικά
Διαβάστε περισσότεραΚεφάλαιο 2.1-2.4: Εισαγωγή στην C. ( ιαλέξεις 3-4) ιδάσκων: ηµήτρης Ζεϊναλιπούρ
Κεφάλαιο 2.1-2.4: Εισαγωγή στην C ( ιαλέξεις 3-4) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγή στην C: Σύνταξη και Σηµασιολογία σχόλια µεταβλητές και σταθερές τύποι δεδοµένων Μετά αυτές τις δυο διαλέξεις
Διαβάστε περισσότεραΚΕΦΑΛΑΙΟ 4ο. Α. Το περιβάλλον της Microsoft Fortran Powerstation
ΚΕΦΑΛΑΙΟ 4ο Α. Το περιβάλλον της Microsoft Fortran Powerstation Μία πρώτη ταξινόµηση των γλωσσών προγραµµατισµού σχετίζεται µε το επίπεδο της µηχανής για το οποίο προγραµµατίζει κάποιος. Έτσι διακρίνουµε
Διαβάστε περισσότεραΚΑΤΑΝΟΗΣΗ ΑΝΑΛΥΣΗ ΕΠΙΛΥΣΗ. Ο προγραμματισμός ασχολείται με το σύνολο των εντολών που δίνονται στον υπολογιστή ώστε να υλοποιείται ο αλγόριθμος.
ΚΑΤΑΝΟΗΣΗ ΑΝΑΛΥΣΗ ΕΠΙΛΥΣΗ Ο προγραμματισμός ασχολείται με το σύνολο των εντολών που δίνονται στον υπολογιστή ώστε να υλοποιείται ο αλγόριθμος 1 2 3 Εικόνα 43: Διάφορες πλακέτες υπολογιστών Μέσα σε δύο
Διαβάστε περισσότεραΦΥΣ 145 Υπολογιστικές Μέθοδοι στη Φυσική. Πρόοδος 26 Μαρτίου 2007 Ομάδα 1 η
ΦΥΣ 145 Υπολογιστικές Μέθοδοι στη Φυσική Πρόοδος 26 Μαρτίου 2007 Ομάδα 1 η Γράψτε το ονοματεπώνυμο και αριθμό ταυτότητάς σας στο πάνω μέρος της αυτής της σελίδας. Πρέπει να απαντήσετε και στα 6 προβλήματα
Διαβάστε περισσότεραΜεταγλώττιση και σύνδεση πολλαπλών αρχείων κώδικα. Προγραμματισμός II 1
Μεταγλώττιση και σύνδεση πολλαπλών αρχείων κώδικα Προγραμματισμός II 1 lalis@inf.uth.gr Χρήση λογισμικού που ήδη υπάρχει Τα πολύπλοκα συστήματα αναπτύσσονται σταδιακά, «χτίζοντας» πάνω σε υπάρχουσα λειτουργικότητα
Διαβάστε περισσότεραComputing. Νοέμβριος Έκδοση 1.0
Computing Νοέμβριος 2017 Έκδοση 1.0 Ενότητα Computing Αυτή η ενότητα παραθέτει τις βασικές έννοιες και δεξιότητες που σχετίζονται με την ικανότητα χρήσης υπολογιστικής σκέψης (computational thinking) και
Διαβάστε περισσότεραΠροεπεξεργαστής C. Προγραμματισμός Ι 1
Προεπεξεργαστής C Προγραμματισμός Ι lalis@inf.uth.gr 1 Βασική ιδέα Ο προεπεξεργαστής (pre-proccesor) της C είναι ένα πρόγραμμα που εκτελείται και μετασχηματίζει τον πηγαίο κώδικα πριν αυτός δοθεί στον
Διαβάστε περισσότεραΑντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE)
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE) NetBeans, Πρώτα παραδείγματα ανάπτυξης Java εφαρμογών Γαβαλάς Δαμιανός dgavalas@aegean.gr Στόχοι
Διαβάστε περισσότεραΠ. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7
Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη Εισαγωγικά
Διαβάστε περισσότεραΑντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE)
Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE) NetBeans, Πρώτα παραδείγματα ανάπτυξης Java εφαρμογών Στόχοι εργαστηρίου Εξοικείωση με τις βασικές
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου
Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 12 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και
Διαβάστε περισσότεραΕισαγωγή στη Fortran. Μάθημα 3 ο. Ελευθερία Λιούκα
Εισαγωγή στη Fortran Μάθημα 3 ο Ελευθερία Λιούκα liouka.eleftheria@gmail.com Περιεχόμενα Loops External Functions Subroutines Arrays Common mistakes Loops Ανάγκη να εκτελέσουμε τις ίδιες εντολές πολλές
Διαβάστε περισσότεραΠεριεχόµενα. Ανασκόπηση - Ορισµοί. Ο κύκλος ανάπτυξης προγράµµατος. Γλώσσες Προγραµµατισµού Ασκήσεις
Προγραµµατισµός Η/Υ Ανασκόπηση - Ορισµοί Περιεχόµενα Ο κύκλος ανάπτυξης προγράµµατος Περιγραφή προβλήµατος Ανάλυση προβλήµατος Λογικό ιάγραµµα Ψευδοκώδικας Κωδικοποίηση Συντήρηση Γλώσσες Προγραµµατισµού
Διαβάστε περισσότερα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
Διαβάστε περισσότεραΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015. Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας Τι είναι τα υποπρογράμματα Αυτόνομες μονάδες κώδικα Γραμμένα από τον χρήστη Η δομή
Διαβάστε περισσότεραSPEEDO AQUABEAT. Specially Designed for Aquatic Athletes and Active People
SPEEDO AQUABEAT TM Specially Designed for Aquatic Athletes and Active People 1 2 Decrease Volume Increase Volume Reset EarphonesUSBJack Power Off / Rewind Power On / Fast Forward Goggle clip LED Status
Διαβάστε περισσότεραΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #0
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #0 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #0 2 Γενικά Η C είναι μιας γενικής χρήσης γλώσσα προγραμματισμού. Είχε συνδεθεί στενά
Διαβάστε περισσότεραΣυστήµατα και Αλγόριθµοι Πολυµέσων
Συστήµατα και Αλγόριθµοι Πολυµέσων Ιωάννης Χαρ. Κατσαβουνίδης Οµιλία #8: Αρχιτεκτονική Pentium µε εντολές MMX/SSE/SSE2 για εφαρµογές πολυµέσων 14 Νοεµβρίου 2005 Επανάληψη ιεθνή στάνταρ MPEG1/MPEG2 Εκτίµηση
Διαβάστε περισσότεραΟδηγίες Εγκατάστασης και χρήσης προγραμμάτων για την γλώσσα C
Οδηγίες Εγκατάστασης και χρήσης προγραμμάτων για την γλώσσα C Περιεχόμενα 1. Το πρόγραμμα Dev-C++... 2 1.1 Λήψη και εγκατάσταση... 2 1.2 Χρήση... 5 2. Το πρόγραμμα Geany... 10 2.1 Λήψη και εγκατάσταση...
Διαβάστε περισσότεραΠρογραμματισμός Ι. Πίνακες, Δείκτες, Αναφορές και Δυναμική Μνήμη. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Προγραμματισμός Ι Πίνακες, Δείκτες, Αναφορές και Δυναμική Μνήμη Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Πίνακες Αντικειμένων Όπως στην C μπορούμε να έχουμε πίνακες από
Διαβάστε περισσότερα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
Διαβάστε περισσότεραΚεφάλαιο 1 Εισαγωγή στη C
Κεφάλαιο 1 Εισαγωγή στη C 1.1 Ιστορία της C Η γλώσσα προγραμματισμού C δημιουργήθηκε στα εργαστήρια Bell στις αρχές της δεκαετίας του 70 για να μεταφερθεί το λειτουργικό σύστημα Unix από ένα σύστημα DEC
Διαβάστε περισσότεραΑΦAΙΡΕΤΙΚΟΣ (ή ΑΦΗΡΗΜΕΝΟΣ) ΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ (ΑΤΔ) (Abstract Data Type-ADT) - σύνολο δεδομένων (data, objects) - σύνολο πράξεων στα δεδομένα
Τύπος Δεδομένων: ΑΦAΙΡΕΤΙΚΟΣ (ή ΑΦΗΡΗΜΕΝΟΣ) ΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ (ΑΤΔ) (Abstract Data Type-ADT) - σύνολο δεδομένων (data, objects) - σύνολο πράξεων στα δεδομένα - Ένας ΑΤΔ είναι ένα μαθηματικό μοντέλο (οντότητα)
Διαβάστε περισσότεραΕνότητες στην C Τεχνική Υλοποίησης Αφαιρετικών Τύπων Δεδομένων στην C
Ενότητες στην C Τεχνική Υλοποίησης Αφαιρετικών Τύπων Δεδομένων στην C Δυσκολία: Προγράμματα που λύνουν «πραγματικά προβλήματα» μπορεί να είναι μεγάλα (χιλιάδες ή εκατομμύρια γραμμές κώδικα). Κανείς δεν
Διαβάστε περισσότεραΚΕΦΑΛΑΙΟ 6: Γλώσσες. 6.1 Ιστορική εξέλιξη 6.4 Υλοποίηση γλώσσας. Κεφάλαιο 6: «Γλώσσες Προγραµµατισµού»
ΚΕΦΑΛΑΙΟ 6: Γλώσσες Προγραµµατισµού 6.1 Ιστορική εξέλιξη 6.4 Υλοποίηση γλώσσας 1 6.1 Γενιές γλωσσών προγραµµατισµού 2 Δεύτερη γενιά: γλώσσα assembly Ένα µνηµονικό σύστηµα για την αναπαράσταση προγραµµάτων
Διαβάστε περισσότεραεφαρμογών Συμπεριφορά απόδοσης εφαρμογών Benchmarks, Profiling GRNET ntell [at] grnet.gr Χρονοεπίδοση και αξιολόγηση απόδοσης εφαρμογών
Χρονοεπίδοση Συμπεριφορά Benchmarks, GRNET ntell [at] grnet.gr Εκπαιδευτικό Σεμινάριο ARIS Θεσσαλονίκη, 28-29 Σεπ. 2015 1/28 Χρονοεπίδοση κλιμάκωση Παράγοντες που επηρεάζουν την επίδοση Αναζήτηση σημείων
Διαβάστε περισσότεραΕντολές εισόδου - εξόδου. Εισαγωγή στη C++
Εντολές εισόδου - εξόδου Εισαγωγή στη C++ Το πρώτο πρόγραμμα //my first program #include using namespace std; int main(){ cout
Διαβάστε περισσότεραΕθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών. Οδηγίες εργαστηρίου. Συστήματα Παράλληλης Επεξεργασίας 9 ο Εξάμηνο
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Οδηγίες εργαστηρίου 9 ο Εξάμηνο Λογαριασμοί Έχετε 2 accounts (και 2 διαφορετικά home directories!)
Διαβάστε περισσότερα