Fundamentals of computer science - (5 cfu)
|Prof. Stefano Cagnoni||Tel. 0521-905731 - Fax. 0521-905723|
| ||E-mail. firstname.lastname@example.org|
| ||Home page. http://www.ce.unipr.it/people/cagnoni|
The main objective of the classes is to provide basic knowledge about the principles behind the functioning and of the organization of computing systems and about methodologies and tools to exploit the possibilities that computing systems offer. These objectives are reached through the introduction to programming principles and tools, which are known to be essential aspects for both theoretical and practical applications. Moreover, classes provide functional descriptions of the principal software/hardware modules of computing systems.
- Hardware architecture of a computing machine and introduction to principia of the functional behavior of electronic computers:
Numbers and numbering systems
I/O units and control
Common peripheral devices
Examples: sorting algorithms
- Operating systems
- Programming and programming languages.
Languages (formalisms, grammars)
- Programming in C
Data types and data structures. Control structures.
- Productivity software.
Classes on programming deal with an in-depth analysis of ANSI C programming language and with practical laboratory exercises. Exercises are mainly devoted to problems of numerical analysis and complex data structures. In particular, students will design algorithms and programs regarding: sorting problems, search problems, lists and tables management, etc.
Two written exams (one of which in itinere): both exams must be sufficient. Final mark is based on the mean of both exams. Only if the first exam is sufficient, it is possible to go for the second exam in the following session. All sessions will allow both first and second exams. In case a student is not happy with his/her final mark, he/she can go for a SUBSTITUTIVE oral exam; in this case, all precedent exams are immediately cleared. Second exam regards solving a problem through a C program.
Any textbook on foundations of computer science is suitable for the classes. Slides and classes are mainly based on the following titles:
* P.Demichelis, E.Piccolo "Introduzione all'Informatica in C", McGraw-Hill
* C.Batini, L.C.Aiello, M.Lenzerini, A.Marchetti Spaccamela, A.Miola "Fondamenti d i Programmazione dei Calcolatori Elettronici", Franco Angeli
* Paolo Tosoratti, "Introduzione all'Informatica", seconda edizione, Casa Editrice Ambrosiana
* Peter Bishop, "L'Informatica", Jackson
Ultimo aggiornamento: 28-07-2008