FOUNDATIONS OF COMPUTER SCIENCE P - Z

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

Teaching Staff

LUCIA LO BELLO
GAETANO PATTI


Learning Objectives

Knowledge and understanding

Knowledge about the information representation inside computers and about the computer architecture.

Understanding of how computers work.

Knowledge about base software and operating systems,.

Understanding of algorithms.

Knowledge about programming languages, compilers, and interpreters.

Knowledge about computer networks.

Knowledge about structured programming and C programming.

Applying knowledge and understanding

Development of C programs for complex data structure management (archives, libraries, etc.).


Course Structure

Lectures. Lab exercises.

Should teaching be carried out in mixed mode or remotely, it may be necessary to introduce changes with respect to previous statements, inline with the programme planned and outlined in the syllabus.



Detailed Course Content

Asterisks (*) indicate the minimum skills.

Information Representation: Numbering systems and conversion algorithms. Integer and floating point numbers.(*)

Computer architecture: The computer structure: central memory, central unit, elementary operation of the computer. (*)

Operating System: Translation and execution of programs. Programming Environment. Compilers vs. interpreters. Operating System. (*)

Algorithms and Programs Automatic data processing. Algorithms and programs. Programming languages. The design of a program. (*)

Computer Networks and the Internet Computer networks. Local area networks. Wide area networks. Internet and the most popular network applications.(*)

The ‘’C’’ programming language: syntax and semantics : Control: Assignment. Control structures. Data Types in C: simple types (int, char, float, double) and structured (arrays and strings, structures). The pointer type. Functions. Scope of identifiers. Declarations and scope of identifiers. Local variables, global and static. Techniques for binding of parameters. Recursion. Files: text files and binary files.(*)

Sorting and searching algorithms : Sequential and binary search. Sorting algorithms. (*)

Dynamic memory allocation (*)

Data Structures : Lists (*) Stacks, Queues and Trees.



Textbook Information




Open in PDF format Versione in italiano