Nessuno in particolare se non una buona conoscenza della lingua del corso (italiano) e una conoscenza basilare della matematica
Il corso ha l'obiettivo di dotare lo studente della capacità di comprendere i principi fondamentali che regolano il funzionamento di ogni strumento informatico, sia dal punto di vista dell'hardware, sia e soprattutto dal punto di vista del software, ovvero dei concetti che stanno alla base della concezione, sviluppo e realizzazione di soluzioni di tipo algoritmico.
Contenuto del corso:
Course contents: 1) Definizioni e concetti base
- algoritmi e programmi
- diagrammi di flusso
- correttezza ed efficienza dei programmi
2) Aritmetica binaria
- la codifica binaria
- notazioni: modulo e segno,complemento a 2, floating point
- concetti base di logica
- concetti base di circuiti elettronici
3) Programmazione con linguaggio Python
- variabili e tipi
- istruzioni base
- strutture di controllo
- cicli
- dati strutturati
- sottoprogrammi
4) Architettura del calcolatore
- il processore
- dispositivi di memoria
- concetti di base sul sistema operativo
- concetti di base sulla gestione delle periferiche
La didattica si svolge per mezzo di 32 ore di lezioni frontali e 16 ore in laboratorio, consistenti in un mix ragionato di
- presentazioni e spiegazioni di nozioni e tecniche informatiche;
- approfondimento con esercizi pratici svolti insieme agli studenti su strumenti di particolare importanza sia astratti (i.e. diagrammi di flusso) sia più concreti (i.e. scrittura e compilazione di programmi);
L’esame consiste in una prova scritta divisa in due parti:
la parte A è un questionario con 20 domande a risposta multipla (1 punto per domanda);
la parte B consta di 2 domande aperte (5 punti per domanda, per un totale di 30/30).
Per la sufficienza lo studente deve prendere almeno 15 punti nella parte A e 3 punti nella parte B.
La parte A mira a verificare che lo studente abbia acquisito le nozioni base per potersi muovere in maniera efficace nel contesto dell'informatica. La parte B, invece, ha lo scopo di verificare quanto lo studente sia in grado di andare in profondità su due aspetti in particolare studiati durante il corso.
Working knowledge of the language of the course (Italian) and a basic knowledge of maths.
1) Fundamental concepts and definitions
- algorithms and programs
- flowcharts
-soundness and efficiency of programs
2) Binary arithmetics
- binary coding
- notations
- fundamentals of logics
- fundamentals of electronic circuitry
3) Programming with Python
- types and variables
- Basic instructions
- control structures
- loops
- structures
- subprograms
4) Architecture of computers
- processors
- memory devices
-fundamentals on operating system
- fundamentals on peripherals
1) Fundamental concepts and definitions
- algorithms and programs
- flowcharts
-soundness and efficiency of programs
2) Binary arithmetics
- binary coding
- notations
- fundamentals of logics
- fundamentals of electronic circuitry
3) Programming with Python
- types and variables
- Basic instructions
- control structures
- loops
- structures
- subprograms
4) Architecture of computers
- processors
- memory devices
-fundamentals on operating system
- fundamentals on peripherals
Lectures are provided in the form of 32 hours in class and 16 hours in a computer lab, with a mix of
- slides and discussions on notions and techniques in Computer Science;
- in depth exercises with the students on the most important instruments, both abstracts (i.e. flowcharts) and concrete (i.e. writing and deployment of programs);
The exam consists of a written test in two parts: part A is a multiple choice questionnaire with 20 questions (1 point per correct answer) and part B includes 2 open questions (5 points per fully correct answer) for a total of 30/30 points.
To pass the exam the student must get at least 15 points in part A and 3 points in part B.
Part A aims at verifying that the student has acquired the basic knowledge to deal with Computer Science in a significant way, whereas part B aims at checking how in depth the student is able to go with respect to two aspects studied during the course.