FOUNDATIONS OF COMPUTER SCIENCE F - O

ING-INF/05 - 9 CFU - 2° Semester

Teaching Staff

SALVATORE CAVALIERI
SIMONE PALAZZO


Learning Objectives

The course covers the fundamental concepts of compure science: digital information representation, computer architectures, operating systems, algorithms, programming languages, on compilers and interpreters and on structured programming and programming in C language. In particular, the development of C programs for the management of complex data structures (libraries, archives, etc.).


Course Structure

Lectures, hands-on exercises and laboratory.



Detailed Course Content

Fundamentals of algorithms and programs

- Automatic information processing. Algorithms and programs. Programming languages. Code Design. Structured programming. Flowcharts and pseudocode.

Information Representation

- Coding systems. Numbering systems and conversion algorithms. Full and floating point arithmetic. Representation of multimedia data.

Computer Architecture:

- Computer components: central memory, central unit, basic operation of the computer (machine cycle). Peripheral devices and memories.

Computer networks and the Internet
- Local networks. Geographical networks. Network protocols. Overview of the Internet and the most widespread network applications.

Operating Systems

- Programming Environment. Compilers vs. interpreters. Architecture and functionality of an Operating System. Process management. Memory management. File system.

The C programming language: syntax and semantics

- Instruction set. Control structures. Data types in C: int, char, float, double, arrays and strings, structures. The C pointer. Functions.

Sorting and searching algorithms

- Sequential and binary search. Sorting algorithms.

Data structures

- Dynamic data structures. Dynamic allocation of memory. Stacksm Queues and Trees. Example codes.



Textbook Information




Open in PDF format Versione in italiano