Laurea in Informatica

Didattica erogata

×
Stampa
Insegnamento
ANALISI MATEMATICA
Codice
MF0574
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
FERRERO ALBERTO
Docenti
CFU
6.0
Ore di lezione
48.0
Ore di studio individuale
102.0
Settore Scientifico Disciplinare (SSD)
MAT/05 - ANALISI MATEMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
A
Anno
1
Periodo
Primo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Insiemi, funzioni, limite per funzioni reali di una variabile reale, continuità, calcolo differenziale e integrale per funzioni reali di una variabile reale.
Sets, functions, limit for real functions of one real variable, continuity, differential and integral calculus for real functions of one real variable.
Testi di riferimento/Textbooks
Bramanti, Pagani, Salsa, ``Analisi Matematica 1 con elementi di geometria e algebra lineare'', Ed. Zanichelli, 2014.
Bramanti, Pagani, Salsa, ``Analisi Matematica 1 con elementi di geometria e algebra lineare'', Ed. Zanichelli, 2014.
Obiettivi formativi/Mission
Acquisizione delle nozioni di base del calcolo differenziale e integrale per le funzioni reali di una variabile reale.
Acquire the basic notions of differential and integral calculus for real functions of one real variable.
Prerequisiti/Required background knowledge
Nozioni di base dell'algebra e della trigonometria.
Elementary notions of algebra and trigonometry.
Metodi didattici/Teaching methods
Il corso è organizzato con lezioni frontali con parte teorica ed esercizi. Ogni argomento del corso viene introdotto per mezzo di una discussione generale che ha lo scopo di renderla il più possibile comprensibile. In un secondo momento vengono introdotte le nozioni di base di ciascun argomento; esse sono successivamente seguite da esempi con lo scopo di chiarirne il significato. Il terzo passo è dedicato agli enunciati dei principali teoremi e alle loro dimostrazioni. L'ultima parte è dedicata agli esercizi. La partecipazione attiva alle lezioni viene stimolata attraverso domande che si pongono anche l'obiettivo di comprendere il livello di difficoltà incontrato nel seguire le lezioni stesse.
The course is organized with frontal lessons with theoretical sessions and exercises. Each subject of the course is introduced by mean of a general discussion which has the purpose of making it comprehensible to the students as much as possible. In a second time the basic notions of each subject are introduced; they are successively followed by examples with the purpose of clarifying their meaning. The third step is devoted to the statements of the main theorems and their proofs. The last part is devoted to the exercises. The active participation to the lectures is encouraged through questions addressed to students which have also the purpose to make possible understanding which are the difficulties met by them in attending these lectures; students are also encouraged to suggest possible exercises on topics that from their point of view need more clarifications.
Altre informazioni/Further information
Oltre ai libri suggeriti per la teoria, ulteriore materiale per la preparazione dell'esame verrà fornito durante lo svolgimento del corso. Esso è costituito dalle diapositive utilizzate nelle lezioni a distanza e dalle prove scritte degli anni precedenti. Le persone con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Le persone con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
In addition to the suggested books, further material for the preparation of the exam will be provided during the development of the course. It is made up of the slides used during the course of the last year and of the written exams of the previous years. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
L'esame è costituito da una prova scritta. La prova scritta di solito è costituita da 4-6 esercizi su diversi argomenti del corso e da una o più domande sulla parte teorica. In ogni prova scritta, la maggior parte degli argomenti contenuti nel corso viene coperta. A ciascun esercizio corrisponderà un punteggio e la prova scritta si considererà sufficiente se il punteggio totale conseguito risulterà essere maggiore o uguale a 18. Per il conseguimento della lode, il punteggio totale della prova scritta dovrà essere superiore a 30. La prova orale è facoltativa e si è ammessi soltanto nel caso in cui venga raggiunto nella prova scritta un voto sufficiente. L'esame orale è costituito da domande preliminari sulle nozioni di base dell'Analisi Matematica e sulle funzioni elementari, da una discussione sugli esercizi contenuti nella prova scritta e da alcune domande finali sugli enunciati e le dimostrazioni dei principali risultati teorici. Nel caso in cui la prova orale risultasse soddisfacente sarà pertanto possibile ottenere un voto finale superiore a quello della prova scritta. La differenza tra voto finale e voto della prova scritta non supererà mai i 7 punti.
The exam consists of a written test. The written test usually consists of 4-6 exercises on different topics of the course and one or more questions on the theoretical part. In each written test, most of the topics contained in the course are covered. Each exercise will be assigned a score, and the written test will be considered sufficient if the total score achieved is greater than or equal to 18. To obtain the honors, the total score in the written exam must be higher than 30. The oral test is optional and you are admitted only if a sufficient evaluation is achieved in the written test. The oral exam consists of preliminary questions on the basic notions of Mathematical Analysis and elementary functions, a discussion on the exercises contained in the written test and some final questions on the statements and proofs of the main theoretical results. If the oral test is satisfactory, it will therefore be possible to obtain a final grade higher than that of the written test. The difference between the final grade and the written exam grade will never exceed 7 points.
Programma esteso/Content
Insiemi, operazioni insiemistiche; funzioni, composizione di funzioni, iniettività, suriettività, biunivocità, invertibilità, cardinalità di un insieme. Limite di una funzione reale di una variabile reale; limiti destro e sinistro; limiti e operazioni algebriche; Teorema dei due carabinieri; Teorema di esistenza del limite per funzioni monotone; Teorema di cambiamento di variabile per i limiti. Continuità per funzioni reali di una variabile reale; continuità e operazioni algebriche; continuità di funzioni composte; Teorema di permanenza del segno; Teorema di Weierstrass; Teorema degli zeri e dei valori intermedi; continuità della funzione inversa. Calcolo differenziale per funzioni reali di una variabile reale; derivate e operazioni algebriche; derivata di una funzione composta; derivabilità della funzione inversa. Massimi e minimi relativi; monotonia di una funzione e segno della derivata prima; Teoremi di de l'Hopital; funzioni convesse e concave, punti di flesso e legame con il segno della derivata seconda. Integrazione secondo Riemann; integrabilità di somme e prodotti di funzioni integrabili; Teorema della media; funzioni integrali; Teorema fondamentale del calcolo integrale; formule di integrazione per sostituzione e per parti.
Sets and operations between sets; definition of function, composition between functions, injectivity, surjectivity, bijectivity, invertibility, cardinality of a set. Limit of a real function of one real variable; right limit and left limit; limits and algebraic operations; Comparison Theorem; existence of the limit of a monotone function; change of variable. Continuity for real functions of one real variable; continuity and algebraic operations; continuity of a composition ; Sign Permanence Theorem; Weierstrass Theorem; Intermediate Values Theorem; continuity of the inverse function. Differential Calculus for real functions of one real variable; derivatives and algebraic operations; derivative of a composition; differentiability of the inverse function. Relative maxima and minima; monotonicity of a function and sign of the first order derivative; de l'Hopital Theorems; convex and concave functions, flex points and sign of the second order derivative. Riemann integral; integrability of sums and products of integrable functions; Mean Value Theorem; integral functions; Fundamental Theorem of Integral Calculus; integration by parts and change of variable formula.
Risultati di apprendimento attesi/Intended learning objectives
- Conoscenza e capacità di comprensione: acquisizione delle principali nozioni del calcolo differenziale ed integrale per le funzioni reali di una variabile reale. - Capacità di applicare conoscenza e comprensione: saper dedurre le principali proprietà qualitative e quantitative per una funzione reale di una variabile reale. - Capacità di apprendere: acquisizione di una certa padronanza nell'utilizzo del ragionamento logico e nell'applicazione del rigore metodologico necessari per affrontare problemi basati sulla modellazione matematica.
- Knowledge and understanding: acquisition of the main notions of differential and integral calculus for real functions of one real variable. - Applying knowledge and understanding: to be able to deduce the main qualitative and quantitative properties for real functions of one real variable. - Learning skills: the student must learn a proper skill in using in the logical thinking and in the application of the methodological rigor essential for facing problmes based on mathematical models.
×
Stampa
Insegnamento
TECNICHE DI COMUNICAZIONE E SCRITTURA
Codice
MF0395
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
BUSSOLINO CLAUDIA
CFU
3.0
Ore di lezione
24.0
Ore di studio individuale
51.0
Settore Scientifico Disciplinare (SSD)
L-FIL-LET/12 - LINGUISTICA ITALIANA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
C
Anno
1
Periodo
Secondo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
Italiano
Italian
Contenuti/Content Summary
Il corso punta a fornire una buona conoscenza delle principali tecniche di comunicazione e di scrittura, tenendo in particolare considerazione il tipo di formazione scientifica degli studenti e le loro più frequenti occasioni di scrittura in campo accademico e professionale. Per questo, sono esaminati i principali modelli della comunicazione, compresi i principi e le massime del comunicare. Inoltre, sono precisate le fasi della scrittura ed è approfondita la strutturazione del testo in capoversi e paragrafi. Il corso include anche una descrizione delle principali caratteristiche della lingua italiana, e un esame dei più ricorrenti errori di grammatica e scrittura; questi saranno rilevati e monitorati attraverso diverse modalità durante gli incontri, al fine di promuoverne un recupero consapevole e autonomo da parte degli studenti.
The course aims to provide a good knowledge of the main communication and writing techniques, taking into particular consideration the type of scientific training of the students and their more frequent academic and professional writing opportunities. For this, the main models of communication are examined, including the principles and maxims of communicating. In addition, the phases of writing are specified and the structuring of the text into paragraphs and paragraphs is deepened. The course also includes a description of the main characteristics of the Italian language, and an examination of the most common grammar and writing errors; these will be detected and monitored in different ways during the meetings, in order to promote a conscious and autonomous re-use by the students.
Testi di riferimento/Textbooks
Testo di riferimento: Dario Corno, Scrivere e comunicare. La scrittura in lingua italiana in teoria e in pratica. Pearson (ed. digitale: https://he.pearson.it/catalogo/4306). Ulteriori riferimenti: Luca Cignetti, Simone Fornara, Il piacere di scrivere. Guida all’italiano del Terzo millennio. Roma: Carocci, 2014. Luca Cignetti, Silvia Demartini, L’ortografia. Roma: Carocci, 2016. Giuseppe Patota, L’italiano dalla A alla X. Prontuario di grammatica. Roma-Bari: Laterza, 2013.
Testo di riferimento: Dario Corno, Scrivere e comunicare. La scrittura in lingua italiana in teoria e in pratica. Pearson (ed. digitale: https://he.pearson.it/catalogo/4306). Ulteriori riferimenti: Luca Cignetti, Simone Fornara, Il piacere di scrivere. Guida all’italiano del Terzo millennio. Roma: Carocci, 2014. Luca Cignetti, Silvia Demartini, L’ortografia. Roma: Carocci, 2016. Giuseppe Patota, L’italiano dalla A alla X. Prontuario di grammatica. Roma-Bari: Laterza, 2013.
Obiettivi formativi/Mission
Il corso punta a formare una buona competenza: - nell’uso analitico dei modelli della comunicazione - nell’uso delle massime del comunicare - di scrittura verificata in tutte le sue componenti (documentazione, pianificazione, stesura, revisione, editing, pubblicazione) - della lingua italiana scritta - nella progettazione di testi scritti - nella realizzazione scritta di testi scientifici.
The course aims to train good competence: - in the analytical use of communication models - in the use of the maxims of communicating - writing verified in all its components (documentation, planning, drafting, revision, editing, publication) - of the written Italian language - in the design of written texts - in the written production of scientific texts.
Prerequisiti/Required background knowledge
È richiesta la conoscenza della lingua italiana, almeno a livello C1.
Proficiency in the Italian language is required (C1 QCER).
Metodi didattici/Teaching methods
Sono presentate lezioni frontali con l’ausilio di slides (ppt).
Lectures are presented with the use of slides.
Altre informazioni/Further information
Durante il corso gli studenti si impegnano in esercitazioni scritte che sono valutate talora collettivamente, talora individualmente.
Durante il corso gli studenti si impegnano in esercitazioni scritte che sono valutate talora collettivamente, talora individualmente.
Modalità di verifica dell'apprendimento/Assessment methods
In sede d’esame allo studente è richiesto di comporre per iscritto un testo e di rispondere a 15 domande (tempo: 2h30).
During the exam, the student is required to compose in writing a text consisting of a report on what they have learned in the course (time: 2h30).
Programma esteso/Content
Il corso esamina i seguenti contenuti: 1. Comunicazione e linguaggio – 2. I modelli della comunicazione – 3. Il testo – 4. La scrittura professionale – 5. Il processo di scrittura – 6. La documentazione – 7. La pianificazione – 8. Il paragrafo – 9. La stesura – 10.Il capoverso e l’uso della lingua – 11. Le norme – 12. Lo stile e la revisione. – 13. Il significato e il lessico – 14. La sintassi e il testo. – 15. La relazione d’esame – 16. Il testo professionale – 17. La lingua italiana e le sue caratteristiche – 18. La lingua italiana e i suoi principali errori nella scrittura – 19. Il testo scientifico.
The course examines the following contents: 1. Communication and language - 2. The communication models - 3. The text - 4. The professional writing - 5. The writing process - 6. The documentation - 7. The planning - 8. Paragraph - 9. The drafting - 10. The paragraph and the use of language - 11. The rules - 12. The style and revision. - 13. The meaning and the lexicon - 14. The syntax and the text. - 15. The examination report - 16. The professional text - 17. The Italian language and its characteristics - 18. The Italian language and its main errors in writing - 19. The scientific text.
Risultati di apprendimento attesi/Intended learning objectives
Lo studente dovrà dimostrare una competenza nella comprensione e produzione dei testi complessi utili nel percorso universitario e lavorativo.
The student will have to demonstrate competence in the understanding and production of complex texts useful in the university and work path.
×
Stampa
Insegnamento
FISICA
Codice
MF0202
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
SITTA Mario
Docenti
CFU
6.0
Ore di lezione
48.0
Ore di studio individuale
102.0
Settore Scientifico Disciplinare (SSD)
FIS/01 - FISICA SPERIMENTALE
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
C
Anno
1
Periodo
Secondo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Concetti fondamentali della Fisica classica: Meccanica, Calorimetria e Termodinamica, Elettricità e Magnetismo.
Fundamental concepts of Classical Physics: Mechanics, Calorimetry and Thermodynamics, Electricity and Magnetism.
Testi di riferimento/Textbooks
A.Giambattista, B.McCarthy, R.Richardson, Fisica generale, McGraw Hill D.C.Giancoli, Fisica, Casa Editrice Ambrosiana D.Halliday, R.Resnick, J.Walker, Fondamenti di Fisica, Casa Editrice Ambrosiana J.W.Jewett, R.A.Serway, Principi di Fisica, EdiSES
A.Giambattista, B.McCarthy, R.Richardson, Fisica generale, McGraw Hill D.C.Giancoli, Fisica, Casa Editrice Ambrosiana D.Halliday, R.Resnick, J.Walker, Fondamenti di Fisica, Casa Editrice Ambrosiana J.W.Jewett, R.A.Serway, Principi di Fisica, EdiSES
Obiettivi formativi/Mission
Fornire alle studentesse e agli studenti una conoscenza del metodo di indagine in Fisica e dei fondamenti della Fisica Classica. Modellizzare semplici sistemi e spiegare alcuni fenomeni dell'esperienza ordinaria.
To give the Students a knowledge of the research methods in Physics and of the fundamental concepts in Classical Physics. Modelling simple systems and understanding some phenomena of ordinary experience,
Prerequisiti/Required background knowledge
Analisi Matematica 1
Calculus 1
Metodi didattici/Teaching methods
Lezioni frontali sulla parte teorica ed esercizi numerici. Le studentesse e gli tudenti possono trovare sulla piattaforma DIR molti esercizi messi a disposizione dal Docente al fine di migliorare la preparazione all'esame.
Frontal lectures on the theoretical part and numerical exercises. On the DIR web site Students can find many exercises made available for improve their competence for the exam.
Altre informazioni/Further information
Sulla pagina DIR del Corso sono messe a disposizione delle dispense come guida allo studio, e una raccolta di esercizi, divisi per argomento, per una migliore preparazione all'esame. Le dispense non possono essere considerate sostitutive di un libro di testo. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
On the DIR web page of the Course some notes are available as a guide for studying, along with a collection of exercises, divided by argument, for a better preparation to the exam. The notes cannot be considered a replacement of a good textbook. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
Prova scritta con quiz a risposta multipla e domande aperte, consistenti in esercizi numerici e domande di teoria. E' possibile utilizzare un formulario privo di testo e una calcolatrice non programmabile. Ad ogni domanda è assegnato un punteggio proporzionale alla difficoltà. Per il superamento dell'esame scritto è necessario raggiungere un punteggio minimo di 18/30. A richiesta, eventuale prova orale integrativa per migliorare il voto.
Written exam with multiple choice tests and open questions, consisting in numerical exercises and theoretical questions. Students can use a formulary without text and a non-programmable calculator. A score is associated to each question, proportional to its complexity. To pass the written test a minimum total score of 18/30 is required. On demand, possible supplementary oral exam to improve the grade.
Programma esteso/Content
Richiami di matematica di base. Grandezze fisiche e unità di misura. Cinematica del punto materiale. Forze e principi della Dinamica. Lavoro ed energia. Forza gravitazionale. Elementi di meccanica dei fluidi. Temperatura, calore e principi della Termodinamica. Carica elettrica, campo elettrico, conduttori e isolanti, moto di cariche in campo elettrico. Potenziale elettrico, capacità elettrica. Corrente elettrica, effetto Joule, resistenze. Campo magnetico, effetti magnetici di una corrente, induzione magnetica. Elementi di meccanica delle onde. Integrazione della dimensione di genere: verrà discussa l'importanza dell'integrazione di genere nella ricerca, nei programmi degli insegnamenti e nella formazione.
Recall of basic Mathematics. Physical quantities and unit measures. Kinematics of a material point. Forces and the Principles of Dynamics. Work and energy. The gravitational force. Elements of Mechanics of fluids. Temperature, heat and the Principles of Thermodynamics. Electric charge, electric field, conductors and insulations, motion of charges in an electric field. Electric potential and capacity. Electric current, Joule effect resistance. The magnetic field, magnetic effects of currents, induction. Elements of Mechanics of waves. Gender integration: the importance of gender integration in research, teaching programs and training will be discussed.
Risultati di apprendimento attesi/Intended learning objectives
Conoscenza e comprensione - solida conoscenza delle basi della Fisica classica. Capacità di applicare conoscenza e comprensione - saper affrontare e risolvere semplici problemi di Fisica utilizzando le conoscenze apprese a Lezione.- Autonomia di giudizio - valutare il modo migliore di risolvere un problema di Fisica e la correttezza del risultato ottenuto. Abilità comunicative - essere in grado di comunicare con efficacia il metodo seguito e il risultato ottenuto.
Knowledge and understanding - solid knowledge of the basis of classical Physics. Ability to apply knowledge and understanding - deal with and solve simple Physics problems using the notions learnt during Lessons.Judgement - evaluate the best solving strategy and the accuracy of the result. Communication - to be able to communicate the strategy used and the result obtained.
×
Stampa
Insegnamento
MATEMATICA DISCRETA
Codice
S1366
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
ACETO LIDIA
CFU
9.0
Ore di lezione
72.0
Ore di studio individuale
0.0
Settore Scientifico Disciplinare (SSD)
MAT/03 - GEOMETRIA, MAT/01 - LOGICA MATEMATICA
Tipo di insegnamento
Attività formativa integrata
Fruizione insegnamento
OBB
Anno
1
Periodo
Primo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
Italiano
Italian
Contenuti/Content Summary
Parte di Algebra: numeri interi, algoritmo di Euclide, equazioni diofantee, classi di resto, elementi di crittografia. Parte di Geometria: vettori nel piano, nello spazio tridimensionale ed estensione al caso di R^N, matrici, sistemi lineari, geometria analitica nello spazio tridimensionale. Parte di Logica: logica proposizionale e relativo calcolo della deduzione naturale. Introduzione alla logica dei predicati.
Part of Algebra: integers, Euclid's algorithm, Diophantine equations, remainder classes, elements of cryptography. Part of Geometry: vectors in the plane, in three-dimensional space and extension to the case of R^N, matrices, linear systems, analytic geometry in three-dimensional space. Part of Logic: propositional logic and relative calculation of natural deduction. Introduction to the logic of predicates.
Testi di riferimento/Textbooks
Testi consigliati per la parte di Algebra e Geometria: + Bramanti, Pagani, Salsa, "Analisi Matematica 1 con elementi di geometria e algebra lineare", Ed. Zanichelli. + Appunti del docente caricati sulla piattaforma DIR. Testo consigliato per la parte di Logica: + Asperti, Ciabattoni, "Logica a Informatica". Mc Grow Hill Education, 1997 (disponibile solo in formato PDF).
Recommended texts for the Algebra and Geometry part: + Bramanti, Pagani, Salsa, "Analisi Matematica 1 con elementi di geometria e algebra lineare", Ed. Zanichelli. + Notes of the teacher's upload on the IT platform DIR. Recommended text for the Logic part: + Asperti, Ciabattoni, "Logica a Informatica". Mc Grow Hill Education, 1997 (disponibile solo in formato PDF).
Obiettivi formativi/Mission
L'insegnamento si propone di fornire alle/agli studentesse/studenti la conoscenza degli elementi principali dell'algebra, del calcolo vettoriale e matriciale e delle loro applicazioni e di introdurre le nozioni elementari di logica delle proposizioni e del primo ordine con particolare attenzione alla relazione fra verità e derivabilità ed alla rappresentabilità nel calcolo dei predicati. Scopo dell'insegnamento è che le/gli studentesse/studenti acquisiscano e sappiano utilizzare un linguaggio matematico appropriato in relazione agli argomenti trattati nel corso. Obiettivo formativo dell'insegnamento è quello di sviluppare la capacità di modellizzare semplici situazioni con l'aiuto di idee e metodi di base di algebra (teoria elementare dei numeri) e algebra lineare.
The course aims to provide students with the knowledge of the main elements of algebra, vector and matrix calculus and their applications and to introduce the elementary notions of logic of propositions and of the first order with particular attention to the relationship between truth and derivability. and to the representability in the calculation of predicates. The purpose of the teaching is that students acquire and know how to use an appropriate mathematical language in relation to the topics covered in the course. The educational objective of the teaching is to develop the ability to model simple situations with the help of basic ideas and methods of algebra (elementary number theory) and linear algebra.
Prerequisiti/Required background knowledge
Lettura e produzione di brevi testi scritti in italiano. Proprietà di base dei numeri interi. Proprietà di base del piano cartesiano.
Reading and production of short texts in italian. Basic properties of integers. Basic properties of the cartesian plane.
Metodi didattici/Teaching methods
La didattica si svolgerà mediante lezioni frontali alla lavagna. Oltre alle lezioni teoriche verranno svolti esercizi in aula da parte del docente con il coinvolgimento attivo delle/degli studentesse/studenti per approfondire gli argomenti trattati durante le lezioni teoriche. I concetti oggetto del corso verranno discussi collegialmente in aula e applicati direttamente durante le esercitazioni in aula per stimolare nelle/negli studentesse/studenti il senso critico e l’autonomia di giudizio.
Teaching will take place through lectures on the blackboard. In addition to the theoretical lessons, classroom exercises will be carried out by the teacher with the active involvement of the students to deepen the topics covered during the theoretical lessons. The concepts covered by the course will come stimulate collegially in the classroom and applied directly during classroom exercises for students' critical sense and autonomy of judgment.
Altre informazioni/Further information
Il piano degli studi prevede per gli insegnamenti di "Algebra e Geometria" e "Logica" un unico esame. Tuttavia, alla/o studentessa/studente viene data la possibilità di sostenere separatamente le prove. In ogni caso, viene registrato un unico voto per i due insegnamenti di "Algebra e Geometria" e "Logica", che verrà assegnato a partire dalla media arrotondata per eccesso dei due voti ottenuti a seguito di una valutazione collegiale della/o studentessa/studente. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studentidisabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
The study plan includes a single exam for the courses of "Algebra and Geometry" and "Logic". However, the student is given the opportunity to take the tests separately. In any case, a single grade is recorded for the two courses of "Algebra and Geometry" and "Logic", which will be assigned starting from the average rounded upwards of the two grades obtained following a collegial evaluation of the student. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the __Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/servicesstudents-physical-or-learning-disabilities. Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
L'esame si compone di una prova scritta e di una prova orale. La prova scritta consiste nello svolgimento di esercizi relativi al programma svolto durante le lezioni e ha una durata di un'ora e trenta minuti. La prova orale è a discrezione del docente e consiste in una discussione sulla prova scritta. Le studentesse e gli studenti possono sostenere separatamente i due moduli dell’esame: "Algebra e Geometria" e "Logica". A sua volta, la prova scritta del modulo di "Algebra e Geometria" si compone di due parti che possono essere sostenute anche separatamente, ciascuna della durata ciascuna di 30 minuti, una con esercizi relativi ad Aritmetica Modulare e l'altra con esercizi relativi ad Algebra Lineare. Ciascuna prova si considera superata se si ottiene la sufficienza e avrà validità fino a dicembre 2026. Se si raggiunge la sufficienza in tutte le prove, l'esame di Matematica Discreta si considera superato e viene registrato un unico voto per i due moduli di "Algebra e Geometria" e "Logica", che verrà assegnato a partire dalla media arrotondata dei voti ottenuti in ciascuna delle prove a seguito di una valutazione collegiale della/o studentessa/studente. Al termine di ciascuna prova scritta la/il docente procede alla correzione della stessa e comunica i risultati sulla piattaforma DIR e/o sul portale ESSE3. A questo segue, in genere, la prova orale. I risultati dell’esame mettono in luce il grado di comprensione dei concetti teorici e la capacità di utilizzarli per risolvere nuovi problemi. Durante lo svolgimento delle prove scritte è consentito solo l’uso della calcolatrice.
The exam consists of a written test and an oral test. The written test involves solving exercises based on the material covered during the lectures and lasts one hour and thirty minutes. The oral test is at the discretion of the teacher and consists of a discussion of the written test. Students may take the two exam modules—"Algebra and Geometry" and "Logic"—separately. The written test for the "Algebra and Geometry" module is divided into two parts, which can also be taken separately, each lasting 30 minutes: one with exercises on Modular Arithmetic and the other with exercises on Linear Algebra. Each part is considered passed if a sufficient grade is obtained and is valid until December 2026. If all parts are passed, the Discrete Mathematics exam is considered passed, and a single grade is recorded for the two modules, "Algebra and Geometry" and "Logic." This grade is calculated as the rounded average of the grades obtained in each part, following a collegial evaluation of the student. At the end of each written test, the teacher corrects it and communicates the results via the DIR platform and/or the ESSE3 portal. This is generally followed by the oral test. The exam results reflect the student’s understanding of theoretical concepts and their ability to apply them to solve new problems. Only the use of a calculator is allowed during the written tests.
Programma esteso/Content
Numeri interi. Divisibilità e numeri primi. Massimo comune divisore. Algoritmo di Euclide. Minimo comune multiplo. Equazioni diofantee. Congruenze e classi di resto. Criteri di divisibilità. Rappresentazione di numeri con base diversa da dieci. Teorema cinese del resto. Condivisione di segreti mediante sistemi di congruenze. Il teorema di Eulero. Il problema del logaritmo discreto. Il protocollo di Diffie-Hellman. Il protocollo RSA. Sistemi lineari. Metodo di Eliminazione di Gauss. Matrici, determinanti, rango, matrice inversa. Spazi vettoriali, basi, dipendenza lineare. Applicazioni lineari, prodotto scalare. Applicazioni ai sistemi lineari. Logica Proposizionale: • Sintassi. • Semantica: interpretazione, definizioni di soddisfacibile, contraddittorio, tautologia, conseguenza semantica e risultati connessi, equivalenza semantica, completezza funzionale e forma normali. • Deduzione naturale: regole e dimostrazioni, correttezza, enunciato di completezza. Logica dei Predicati: • Sintassi: variabili libere e legate, sostituzione. • Semantica: Interpretazione, definizioni di soddisfacibile, contraddittorio, tautologia, conseguenza semantica e risultati connessi.
Integers numbers. Divisibility and prime numbers. Greatest common divisor. Euclid's algorithm. Least common multiple. Diophantine equations. Congruences and remainder classes. Severability criteria. Representation of numbers with a base other than ten. Chinese remainder theorem. Sharing of secrets by means of systems of congruences. Euler's theorem. The discrete logarithm problem. The Diffie-Hellman protocol. The RSA protocol. Linear systems. Method of elimination of Gauss. Matrices, determinants, rank, inverse matrix. Vector spaces, bases, linear dependence. Linear applications, scalar product. Applications to linear systems. Logical proposition: • Syntax. • Semantics: interpretation, definitions of satisfiable, contradictory, tautology, semantic consequence and related results, semantic equivalence, functional completeness and normal form. • Natural deduction: rules and proofs, correctness, completeness. Logic of predicates: • Syntax: free and bound variables, substitution. • Semantics: Interpretation, definitions of satisfiable, contradictory, tautology, semantic consequence and related results.
Risultati di apprendimento attesi/Intended learning objectives
Al termine del corso la/o studentessa/studente deve conoscere le nozioni di base dell'algebra, dell'algebra lineare e della logica proposizionale (sia per quanto riguarda la semantica sia per quanto riguarda i metodi di prova) e della logica dei predicati e avere sviluppato una padronanza delle nozioni apprese che le/gli consenta di collegarle tra loro in autonomia e di utilizzarle congiuntamente nella risoluzione di semplici problemi teorici. Inoltre, la/lo studentessa/studente deve essere in grado di spiegare chiaramente sia le nozioni stesse, sia il loro utilizzo in termini generali o nel caso specifico di un problema.
At the end of the course the student must know the basic notions of algebra, linear algebra and propositional logic (both as regards semantics and as regards test methods) and predicate logic and have developed a mastery of the notions learned that allows him to connect them independently and to use them jointly in solving simple theoretical problems. Furthermore, the student must be able to clearly explain both the concepts themselves and their use in general terms or in the specific case of a problem.
Moduli
Codice Insegnamento Settore Scientifico Disciplinare (SSD) Docenti Agenda web
S1367ALGEBRA E GEOMETRIA MAT/03 - GEOMETRIA Aceto Lidia, Laguzzi Giorgio
S1368LOGICA MAT/01 - LOGICA MATEMATICA Laguzzi Giorgio
Mostra scheda insegnamento padre
×
Stampa
Insegnamento
MATEMATICA DISCRETA: ALGEBRA E GEOMETRIA
Codice
S1367
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
ACETO LIDIA
CFU
6.0
Ore di lezione
48.0
Ore di studio individuale
102.0
Settore Scientifico Disciplinare (SSD)
MAT/03 - GEOMETRIA
Tipo di insegnamento
Modulo di sola Frequenza
Fruizione insegnamento
OBB
Categoria insegnamento
A
Anno
1
Periodo
Primo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
G
Lingua insegnamento/Teaching language
Italiano.
Italian.
Contenuti/Content Summary
Teoria elementare dei numeri. Alcune nozioni di base dell'algebra lineare.
Elementary theory of numbers. Some basic ideas of linear algebra.
Testi di riferimento/Textbooks
Testi consigliati: + Bramanti, Pagani, Salsa, "Analisi Matematica 1 con elementi di geometria e algebra lineare", Ed. Zanichelli. + Appunti del docente caricati sulla piattaforma DIR.
Recommended texts: + Bramanti, Pagani, Salsa, "Analisi matematica 1 con elementi di geometria e algebra lineare", Ed. Zanichelli. + Teacher's notes available on the DIR platform.
Obiettivi formativi/Mission
L'insegnamento si propone di fornire alle studentesse e agli studenti la conoscenza degli elementi principali dell'algebra, del calcolo vettoriale e matriciale e delle loro applicazioni. Scopo dell'insegnamento è che le/gli studentesse/studenti acquisiscano e sappiano utilizzare un linguaggio matematico appropriato in relazione agli argomenti trattati nel corso. Obiettivo formativo dell'insegnamento è quello di sviluppare la capacità di modellizzare semplici situazioni con l'aiuto di idee e metodi di base di algebra (teoria elementare dei numeri) e algebra lineare.
The course aims to provide students with the knowledge of the main elements of elementary number theory and some notions of linear algebra. The aim of the teaching is that students acquire and know how to use an appropriate mathematical language in relation to topics covered in the course. The educational objective of the teaching is to develop the ability to model simple situations with the help of basic ideas and methods of algebra (elementary number theory) and linear algebra.
Prerequisiti/Required background knowledge
Lettura e produzione di brevi testi scritti in italiano. Proprietà di base dei numeri interi. Proprietà di base del piano cartesiano.
Reading and production of short texts in italian. Basic properties of integers. Basic properties of the cartesian plane.
Metodi didattici/Teaching methods
La didattica si svolgerà mediante lezioni frontali alla lavagna con parte teorica ed esercizi. Ogni argomento del corso viene introdotto per mezzo di una discussione generale che ha lo scopo di renderla il più possibile comprensibile alle studentesse e agli studenti. In un secondo momento vengono introdotte le nozioni di base di ciascun argomento; esse sono successivamente seguite da esempi con lo scopo di chiarirne il significato. L'ultima parte è dedicata agli esercizi che saranno svolti dal docente con il coinvolgimento attivo delle studentesse e degli studenti per stimolarne il senso critico e l’autonomia di giudizio.
Face-to-face lectures. Teaching will take place through lectures on the blackboard with theoretical part and exercises. Each topic of the course is introduced by means of a general discussion which aims to make it as understandable as possible to students. In a second moment the basic notions of each topic are introduced; they are subsequently followed by examples with the aim of clarifying their meaning. The last part is dedicated to the exercises that will be carried out by the teacher with the active involvement of students to stimulate their critical sense and independent judgment.
Altre informazioni/Further information
Il controllo dell'apprendimento in itinere verrà effettuato svolgendo esercizi in aula con la partecipazione attiva delle studentesse e degli studenti. Oltre ai libri suggeriti per la teoria e gli esercizi, eventuale ulteriore materiale per la preparazione dell'esame verrà fornito durante lo svolgimento del corso. Il voto del modulo di algebra e geometria è una media ponderata con il voto del modulo di logica per ottenere il voto finale di matematica discreta. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studentidisabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
The control of ongoing learning will be carried out by carrying out exercises in the classroom with the active participation of students. In addition to the books suggested for the theory and exercises, any further material for the preparation of the exam will be provided during the course. The algebra and geometry module grade is a weighted average with the logic module grade to obtain the final discrete mathematics grade. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the __Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti__, consulting the University webpage: https://www.uniupo.it/en/services/servicesstudents-physical-or-learning-disabilities. Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
L’esame si compone di due prove scritte, ciascuna della durata di 30 minuti, una prova contiene esercizi relativi ad Aritmetica Modulare e l'altra contiene esercizi relativi ad Algebra Lineare. Ogni prova copre la maggior parte degli argomenti trattati nel corso e può essere sostenuta anche in appelli diversi purché entro e non oltre dicembre 2026. Non è esclusa la presenza di quesiti teorici, oltre agli esercizi. Per superare l’esame del modulo è necessario conseguire la sufficienza in entrambe le prove. Durante lo svolgimento delle prove è consentito l’uso della calcolatrice.
The exam consists of two written tests, each lasting 30 minutes: one test contains exercises on Modular Arithmetic, the other test contains exercises on Linear Algebra. Each test covers the majority of the topics taught in the course and may be taken in different exam sessions, provided it is done no later than December 2026. The presence of theoretical questions, in addition to exercises, is not excluded. To pass the module exam, it is necessary to achieve a passing grade in both tests. The use of a calculator is allowed during the tests.
Programma esteso/Content
Numeri interi. Divisibilità e numeri primi. Massimo comune divisore. Algoritmo di Euclide. Minimo comune multiplo. Equazioni diofantee. Congruenze e classi di resto. Criteri di divisibilità. Rappresentazione di numeri con base diversa da dieci. Teorema cinese del resto. Condivisione di segreti mediante sistemi di congruenze. Il teorema di Eulero. Il problema del logaritmo discreto. Il protocollo di Diffie-Hellman. Il protocollo RSA. Sistemi lineari. Metodo di Eliminazione di Gauss. Matrici, determinanti, rango, matrice inversa. Spazi vettoriali, basi, dipendenza lineare. Applicazioni lineari, prodotto scalare. Applicazioni ai sistemi lineari.
Integers. Divisibility and primes. Greatest common divisor. Euclid's algorithm. Least common multiple. Diophantine equations. Congruences and residue classes. Divisibility criteria. Representation of number in basis other than ten. Chinese remainder theorem. Sharing secrets by means of systems of congruences. Euler's theorem. The problem of the discrete logarithm. The Diffie-Hellman protocol. The RSA protocol. Linear systems. Gauss' elimination method. Matrices, determinants, rank, inverse matrix. Vector spaces, bases, linear dependence. Linear functions, scalar product. Applications to linear systems.
Risultati di apprendimento attesi/Intended learning objectives
Conoscenza e comprensione di alcuni concetti basilari della teoria elementare dei numeri e dell'algebra lineare, e capacità di applicarli a semplici problemi. Queste nozioni devono necessariamente entrare a far parte del bagaglio culturale delle studentesse e degli studenti per consentire loro di poter affrontare con maggiore facilità alcuni esami applicativi in cui le suddette nozioni trovano un'applicazione diretta come nel caso della Fisica. Capacità di valutare l'appropriatezza di un algoritmo che applica tali concetti. Capacità di comunicare in modo semplice e chiaro i procedimenti adottati.
Knowledge and understanding of some basic concepts of elementary number theory and linear algebra, and ability to apply them to simple problems. These notions must necessarily become part of the cultural background of the students to allow them to be able to face more easily some applicative exams in which the aforementioned notions find a direct application as in the case of Physics. Ability to evaluate the appropriateness of an algorithm that applies these concepts. Ability to communicate the procedures adopted in a simple and clear way.
Mostra scheda insegnamento padre
×
Stampa
Insegnamento
MATEMATICA DISCRETA: LOGICA
Codice
S1368
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
LAGUZZI Giorgio
Docenti
CFU
3.0
Ore di lezione
24.0
Ore di studio individuale
51.0
Settore Scientifico Disciplinare (SSD)
MAT/01 - LOGICA MATEMATICA
Tipo di insegnamento
Modulo di sola Frequenza
Fruizione insegnamento
OBB
Categoria insegnamento
C
Anno
1
Periodo
Primo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
G
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Logica Proposizionale e relativo calcolo della Deduzione naturale. Introduzione alla Logica dei Predicati.
Propositional logic and relative calculation of the natural deduction. Introduction to the Logic of Predicates.
Testi di riferimento/Textbooks
"Logica a Informatica" di A. Asperti e A. Ciabattoni, Mc Grow Hill Education (1997) Disponibile in formato PDF
Propositional logic and relative calculation of the natural deduction. Introduction to the Logic of Predicates.
Obiettivi formativi/Mission
Introdurre le nozioni elementari di logica delle proposizioni e del primo ordine con particolare attenzione alla relazione fra verità e derivabilità ed alla rappresentabilità nel calcolo dei predicati.
Introduce the elementary notions of logic of propositions and of the first order with particular attention to the relationship between truth and derivability and to representability in the calculation of predicates.
Prerequisiti/Required background knowledge
Conoscenze acquisite nel corso di algebra e geometria.
Knowledge acquired in the course of algebra and geometry.
Metodi didattici/Teaching methods
Lezioni frontali che includono esercitazioni.
Frontal lessons that include exercises.
Altre informazioni/Further information
Il voto del modulo di logica fa media pesata con il voto del modulo di algebra e geometria per ottenere il voto finale di Matematica discreta.
The grade of the logic module is a weighted average with the grade of the algebra and geometry module to obtain the final grade of discrete mathematics.
Modalità di verifica dell'apprendimento/Assessment methods
La verifica finale consiste in una prova scritta della durata di mezz'ora e in una prova orale facoltativa.
The final exam consists of a written test lasting half an hour and an optional oral test.
Programma esteso/Content
Logica Proposizionale: • Sintassi. • Semantica: interpretazione, definizioni di soddisfacibile, contraddittorio, tautologia, conseguenza semantica e risultati connessi, equivalenza semantica, completezza funzionale e forma normali. • Deduzione naturale: regole e dimostrazioni, correttezza, enunciato di completezza. Logica dei Predicati: • Sintassi: variabili libere e legate, sostituzione. • Semantica: Interpretazione, definizioni di soddisfacibile, contraddittorio, tautologia, conseguenza semantica e risultati connessi.
Propositional Logic: • Syntax. • Semantics: interpretation, definitions of satisfiable, contradictory, tautology, semantic consequence and related results, semantic equivalence, functional completeness and normal form. • Natural deduction: rules and proofs, correctness, completeness statement. Logic of Predicates: • Syntax: free and bound variables, substitution. • Semantics: Interpretation, definitions of satisfiable, contradictory, tautology, semantic consequence and related results.
Risultati di apprendimento attesi/Intended learning objectives
Le competenze da verificare, e necessarie per il superamento del corso consistono nella comprensione dei concetti di base della logica proposizionale (sia per quanto riguarda la semantica sia per quanto riguarda i metodi di prova) e della logica dei predicati.
The skills to be tested, and necessary for passing the course, consist in the understanding of the basic concepts of propositional logic (both as regards semantics and as regards test methods) and predicate logic.
×
Stampa
Insegnamento
PROGRAMMAZIONE 1
Codice
MF0163
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
TERENZIANI Paolo
CFU
9.0
Ore di lezione
72.0
Ore di studio individuale
153.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
A
Anno
1
Periodo
Primo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Il corso ha la finalità di introdurre i fondamenti della programmazione degli elaboratori elettronici, partendo dal concetto di algoritmo e dalla descrizione dei concetti di base di un programma, per arrivare a concetti avanzati di strutture dati e di controllo dei linguaggi di programmazione. Il corso si propone, inoltre, di presentare i concetti di base del linguaggio di programmazione C impiegato a supporto dell’insegnamento della programmazione, nonché per lo svolgimento di esercitazioni pratiche in laboratorio. Il materiale presentato durante le lezioni (slides, esercizi, soluzioni, esempi di codice), sarà disponibile sulla pagina DIR del corso per l'a.a. corrente.
The course aims to introduce the fundamentals of computer programming, starting from the concept of an algorithm and the basic elements of a program, and progressing to advanced concepts of data structures and control structures in programming languages. The course also presents the basic concepts of the C programming language, used to support the teaching of programming as well as for practical laboratory exercises. The material presented during the lectures (slides, exercises, solutions, code examples) will be available on the course’s DIR page for the current academic year.
Testi di riferimento/Textbooks
P. Deitel, H. Deitel Il linguaggio C. Fondamenti e tecniche di programmazione, Pearson.Materiale integrativo fornito dai docenti su DIR
P. Deitel, H. Deitel Il linguaggio C. Fondamenti e tecniche di programmazione, Pearson. Additional materials on DIR.
Obiettivi formativi/Mission
Le studentesse e gli studenti devono essere capace di usare la metodologia top-down nell’analisi dei problemi. In particolare, deve aver acquisito la capacita di • determinare input e output; • sviluppare diagrammi di flusso; • sviluppare programmi nel linguaggio C utilizzando le nozioni di: variabili, tipi di dato; costrutto di selezione (if..else) e condizioni booleane; iterazione e costrutto while; cicli for e do-while; funzioni e passaggio dei parametri; passaggio dei parametri per valore e per riferimento; array e algoritmi su array; il tipo stringa; gestione dei files; • Deve inoltre aver acquisito la capacità di analizzare la complessità di un algoritmo, compilare, verificare ed eseguire programmi.
Students must acquire the capability of applying the top-down methodology in the problem analysis. Specifically, they must be able • to identify input and output, • to develop flow diagrams, • to develop C programs, using the basic notions of: variables and data types; if-then-else and boolean conditions; iteration (while, for, do-while); functions and parameters (by value and by reference); arrays, strings, files • Additionally they must acquire the capability of analyzing the algorithm complexity, and of compiling, verifying and executing C programs.
Prerequisiti/Required background knowledge
Nessuno
None
Metodi didattici/Teaching methods
Lezioni tradizionali e esercitazioni nel laboratorio informatico.
Standard lectures and programming sessions in the computer lab.
Altre informazioni/Further information
Controllo dell'apprendimento in itinere: durante il corso vengono svolte delle esercitazioni in laboratorio sotto la supervisione di un docente. La partecipazione attiva permette una verifica del modo in cui gli argomenti vengono recepiti. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti- disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
Monitoring the learning process: during the course the students will complete assigments in the computer lab under the supervision of a teacher. Active participation allows a check on how topics are received. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services- students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
L’esame e’ svolto seguendo due modalita’: con e senza l’uso del calcolatore. (i) La prova con il calcolatore (prova di laboratorio) consiste di due prove che si tengono nello stesso giorno: 1) quiz; 2) prova pratica. 1. Il quiz prevede 30 domande a risposta multipla, sui concetti di base della programmazione in linguaggio C. Per ogni domanda ci sono 4 possibili risposte predefinite: 1 è corretta, 3 sono sbagliate. La Studentessa/lo Studente deve selezionare la risposta che ritiene corretta. Ogni domanda vale 1 punto. Il quiz è fallito se la Studentessa/lo Studente seleziona meno di 18 risposte effettivamente corrette. In questo caso l'esame termina immediatamente con esito insufficiente. Il quiz è superato se la Studentessa/lo Studente seleziona almeno 18 risposte effettivamente corrette. In questo caso la Studentessa/lo Studente accede alla prova pratica. Le Studentesse/gli Studenti possono trovare un esempio di quiz con la soluzione, sulla piattaforma DIR. Il quiz dura 40 minuti e può riguardare qualunque argomento del corso. 2. Durante la prova pratica la Studentessa/lo Studente, dato un determinato problema, deve: a) implementare un programma in linguaggio C che contiene le strutture dati e gli algoritmi che risolvono il problema; b) compilare con successo il programma; c) verificare la corretta esecuzione del programma. Il programma deve essere strutturato in 2-3 funzioni, inclusa la funzione main. Ogni funzione vale fino ad un massimo di 10 punti, in proporzione alla difficoltà richiesta. Se il programma non è compilabile (non è formalmente corretto) l'esame ha direttamente esito insufficiente. Se il programma è compilabile (è formalmente corretto) ogni funzione viene valutata da 0 a 10 punti in base al livello di correttezza logica. La prova pratica è fallita se il punteggio complessivo è meno di 18. La prova pratica è superata se il punteggio complessivo è almeno 18. La prova pratica dura 2 ore e può riguardare qualunque argomento del corso. Le Studentesse/gli Studenti possono trovare le prove pratiche del passato, con le soluzioni, sulla piattaforma DIR. L'esame è superato solo se entrambe le prove sono state superate. In questo caso il voto finale è la media pesata tra il punteggio del quiz (1/3) e il punteggio della prova pratica (2/3). Durante entrambe le prove non è consentita la consultazione del materiale del corso o di manuali. Entrambe le prove usano i calcolatori del laboratorio informatico; è vietato l'uso di dispositivi mobili o computer portatili. (ii) La verifica senza calcolatore consiste in un esame scritto (obbligatorio) ed un orale (opzionale). L’esame scritto, a discrezione dello studente, puo’ essere sostenuto o tramite due prove in itinere, o con un’unica prova finale. Le prove scritte prevedono l’analisi di problemi di programmazione e lo sviluppo di diagrammi di flusso e programmi C atti a risolverli. La valutazione finale verra’ ottenuta tramite collegialmente da parte di entrambi i docenti a partire dai risultati ottenuti nelle singole prove. A discrezione, al fine di integrare la prova scritta, il docente potrà convocare all'orale sottoponendo alcune domande di verifica.
The exam is administered in two ways: with and without the use of a computer. (i) The computer-based exam (laboratory test) consists of two parts held on the same day: a quiz and a practical test. The quiz comprises 30 multiple-choice questions on the basic concepts of programming in the C language. For each question there are four predefined answers: one is correct and three are incorrect. The Student must select the answer they believe is correct. Each question is worth one point. The quiz is failed if the Student selects fewer than 18 actually correct answers; in that case the exam ends immediately with an unsatisfactory result. The quiz is passed if the Student selects at least 18 actually correct answers; in that case the Student proceeds to the practical test. Students can find a sample quiz with solutions on the DIR platform. The quiz lasts 40 minutes and may concern any topic in the course. During the practical test, given a specific problem, the Student must implement a C program that contains the data structures and algorithms that solve the problem, successfully compile the program, and verify its correct execution. The program must be organized into 2–3 functions, including the main function. Each function is worth up to a maximum of 10 points, proportional to the required difficulty. If the program does not compile (is not formally correct), the exam immediately receives an unsatisfactory result. If the program compiles (is formally correct), each function is graded from 0 to 10 points based on the level of logical correctness. The practical test is failed if the total score is less than 18 and is passed if the total score is at least 18. The practical test lasts two hours and may concern any topic in the course. Students can find past practical tests, with solutions, on the DIR platform. The exam is passed only if both parts have been passed. In that case the final grade is the weighted average of the quiz score (1/3) and the practical test score (2/3). During both parts it is not permitted to consult course materials or manuals. Both parts use the computers in the IT laboratory; the use of mobile devices or personal laptops is prohibited. (ii) The exam without a computer consists of a mandatory written exam and an optional oral exam. At the Student’s discretion, the written exam may be taken either through two midterm tests or as a single final test. The written tests involve analyzing programming problems and developing flowcharts and C programs to solve them. The final evaluation will be determined jointly by both instructors, based on the results obtained in the individual tests. At their discretion, in order to supplement the written exam, the instructor may summon the Student for an oral exam with some verification questions.
Programma esteso/Content
- introduzione alla programmazione strutturata- metodologia top-down nell’analisi dei problemi e nello sviluppo dei diagrammi di flusso (e dei programmi) - concetti di base della programmazione (espressi mediante il linguaggio C): - variabili, tipi di dato; - input e output ; - primi programmi C con il solo uso di sequenze; - costrutto di selezione (if..else) e condizioni booleane; - iterazione e costrutto while; cicli for e do-while; invarianti di ciclo (informali) - funzioni e passaggio dei parametri; passaggio dei parametri per valore e per riferimento; - array e algoritmi su array; - il tipo stringa- gestione dei files; - analisi di complessità di un algoritmo.- Introduzione al sistema operativo Linux e principali comandi per la gestione dei file e dei processi, e per la compilazione ed esecuzione di programmi.
- Introduction to structured programming- Top-down methodology in the problem analysis and in the development of flow charts (and programs)- Basic programming concepts (expressed in the “C” language):- variables, data types- input and output;- esay C programs using only sequences- if-then-else and Boolean Conditions- iteration (while, for, do-while); loop invariants (not formal);- functions and parameter passing (by value and by reference)- arrays and array algorithms;- the string data type- file management- complexity analysis- Introduction to Linux. Main commands to manage files, to compile and execute programs.
Risultati di apprendimento attesi/Intended learning objectives
Al termine del corso, le studentesse e gli studenti devono essere in grado, dato un semplice problema di programmazione, di individuarne un algoritmo risolutivo, implementarlo in linguaggio C, eseguirlo al calcolatore. Conoscenza e comprensione: concetto di algoritmo, concetto di programma, strutture dati fondamentali (tipi scalari, vettori, puntatori, file), costrutti di base della programmazione (if-then-else, while, for, funzioni e parametri). Capacità di applicare conoscenza e comprensione: dato un problema, - individuare i dati di input da raccogliere dall'utente e i dati di output da produrre; - individuare le strutture dati necessarie per gestire tali dati; - definire un algoritmo che trasforma i dati di input nei dati di output, seguendo i costrutti della programmazione; - scrivere al calcolatore il programma sorgente che implementa l'algoritmo, utilizzando un linguaggio di programmazione (C); - generare il programma eseguibile tramite la compilazione del programma sorgente, al calcolatore; - esecuzione e test del programma eseguibile, al calcolatore. Autonomia di giudizio: in modo autonomo lo studente deve riuscire ad identificare le strutture dati necessarie, definire ed implementare l'algoritmo nel linguaggio di programmazione (C), ed infine compilare ed eseguire il programma. Abilità comunicative: lo studente deve riuscire a definire un algoritmo a vari livelli di astrazione, quali il diagramma di flusso, lo pseudo-codice, il programma in linguaggio di programmazione. Inoltre si esige che il programma richieda e presenti i dati all'utente tramite messaggi comprensibili dall'utente. Capacità di apprendimento: lo studente deve essere capace di apprendere come si genera un algoritmo a partire dal problema, come si implementa l'algoritmo in C, ed infine come si compila e si esegue il programma al calcolatore.
At the end of the course, given a simple programming problem, the students must be able to define the algorithm solving the problem, implement the algorithm in C language, execute the program on the computer. Knowledge and comprehension: concepts of algorithm and program, fundamental data structures (scalar types, vector, pointers and files), basic programming constructs (if-then-else, while, for, functions and parameters ). Capacity to apply knowledge and comprehension: given a problem, - identifying input data to be collected from the user, and output data to be produced; - identifying the data structures necessary to manage such data; - defining an algorithm transforming input data in output data, by following the programming constructs; - writing on the computer the source program implementing the algorithm, using the programming language (C); - generating the executable program by compiling the source program, on the computer; - executing and testing the executable program, on the computer. Judgement autonomy: in an autonomous way the student must be able to identify the necessary data structures, define and implement the algorithm in the programming language (C), and finally compile and execute the program. Communication abilities: the student must be able to define an algorithm at several abstraction levels, such as the flow-chart, the pseudo-code, the program in the programming language. Moreover the program must require and present data to the user by means of message that the user can understand. Learning capacity: the student must be able to learn how to generate an algorithm from the problem, how to implement an algorithm in C, and finally how to compile and execute a program on a computer.
×
Stampa
Insegnamento
ARCHITETTURA DEGLI ELABORATORI 1
Codice
MF0789
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
FRANCESCHINIS Giuliana Annamaria
CFU
6.0
Ore di lezione
48.0
Ore di studio individuale
102.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
A
Anno
1
Periodo
Primo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
Italiano
Italian
Contenuti/Content Summary
Il corso fornisce le basi per comprendere l'architettura dei calcolatori moderni e come questa possa influenzare le prestazioni del software. Viene analizzata l'impressionante crescita delle prestazioni e la contemporanea riduzione dei costi dei computer, offrendo anche una breve prospettiva storica di questa evoluzione. Durante il corso, si affrontano concetti chiave come i vari livelli di astrazione utilizzati per analizzare un calcolatore, i compromessi che guidano la scelta delle istruzioni elementari di un processore e l'importanza fondamentale dell'esecuzione parallela a diversi livelli per migliorare le performance. Si comprende anche il ruolo all’interno di un sistema delle memorie, che variano per dimensione, velocità e costo. Si approfondisce poi la codifica binaria di numeri interi e in virgola mobile e le relative operazioni aritmetiche. Si introducono l'algebra di Boole, le porte logiche e i circuiti logici sia combinatori che sequenziali. Infine, il corso mostra come, assemblando questi circuiti, sia possibile creare parte del cammino dei dati di un moderno processore, prendendo come riferimento l'architettura open source RISC-V. L'architettura completa del RISC-V è trattata in un corso successivo.
The course provides the foundation for understanding the architecture of modern computers and how it can influence software performance. It analyzes the impressive growth in performance and the simultaneous reduction in computer costs, also offering a brief historical perspective of this evolution. During the course, key concepts are addressed, such as the various levels of abstraction used to analyze a computer, the trade-offs that guide the choice of a processor's elementary instructions, and the fundamental importance of parallel execution at various levels to improve performance. The role of memories—which vary in size, speed, and cost—within a system is also covered. The course then introduces the binary encoding of integers and floating-point numbers and their respective arithmetic operations. Boolean algebra, logic gates, and both combinational and sequential logic circuits are introduced. Finally, the course demonstrates how, by assembling these circuits, it is possible to create part of the data path of a modern processor, taking the open-source RISC-V architecture as a reference. The complete RISC-V architecture is covered in a subsequent course.
Testi di riferimento/Textbooks
D.A. Patterson, J.L. Hennessy. Struttura e Progetto dei Calcolatori. Progettare con RISC-V. Seconda Edizione Italiana. Zanichelli 2023
D.A. Patterson, J.L. Hennessy. Struttura e Progetto dei Calcolatori. Progettare con RISC-V. Seconda Edizione Italiana. Zanichelli 2023
Obiettivi formativi/Mission
In questo corso saranno introdotti i principi base che guidano il progetto dei calcolatori: definire diversi livelli di astrazione, progettare in funzione delle prestazioni, per esempio sfruttando il parallelismo e organizzando in modo efficiente le memorie. Saranno analizzate le differenze tra i linguaggi di programmazione di alto livello, e i linguaggi di basso livello (assembler e linguaggio macchina), la motivazione per cui sono richiesti entrambi i livelli, e i metodi per passare dal primo tipo di linguaggi al secondo. Saranno richiamate le principali tappe nella storia dei calcolatori da metà del ‘900 ad oggi (introducendo l’architettura di Von Neumann), osservando come lo sviluppo della tecnologia ha influito su dimensioni, costi, velocità ed affidabilità dei calcolatori. Si definiranno gli elementi di base della rappresentazione digitale dei dati, e successivamente saranno illustrate in modo formale e tramite esempi la rappresentazione digitale di numeri, con e senza segno, interi e frazionari (questi ultimi in virgola fissa e in virgola mobile) e del testo. Saranno forniti gli algoritmi per la codifica e decodifica dei dati dei diversi tipi. Un altro obiettivo è mostrare come utilizzando l’algebra di Boole si possano definire (in forma di espressioni algebriche) le funzioni di base che svolgono il processore o altri componenti del sistema. Sarà poi spiegato il legame tra operatori booleani e porte logiche, tra espressioni booleane e circuiti logici combinatori, anche tramite l’applicazione in esercizi. Successivamente saranno illustrati alcuni semplici circuiti sequenziali (con memoria) mostrando prima le componenti elementari e poi la loro combinazione per ottenere registri o memorie. Una volta appresi i circuiti base si svilupperanno alcuni esempi semplificati di circuiti più articolati che realizzano il cammino dei dati (data path) di un processore, in grado di eseguire alcuni tipi di istruzioni (principalmente aritmetico-logiche) sotto il controllo di opportuni segnali. Questo porrà le basi per introdurre parte della struttura del processore RISC-V che sarà approfondita in un corso successivo. Verranno poi introdotti vari tipi di memoria, ed inseriti in diverse categorie, con diverse caratteristiche di costo, velocità, dimensione, e si evidenzierà il ruolo di ciascuna di esse nell’architettura di un calcolatore, considerando anche gli aspetti legati alle prestazioni.
In this course, the basic principles guiding computer design will be introduced: defining different levels of abstraction, designing with a focus on performance, for example by exploiting parallelism and efficiently organizing memories. The differences between high-level programming languages and low-level languages (assembler and machine language) will be analyzed, along with the motivation for requiring both levels, and the methods for transitioning from the first type of language to the second. The main stages in the history of computers from the mid-20th century to today will be reviewed (introducing the Von Neumann architecture), observing how the development of technology has affected the size, cost, speed, and reliability of computers. The basic elements of digital data representation will be defined, and subsequently, the digital representation of numbers (signed and unsigned, integer and fractional—the latter using fixed-point and floating-point), and of text will be formally illustrated and explained with examples. Algorithms for encoding and decoding the different types of data will be provided. Another objective is to show how Boolean algebra can be used to define (in the form of algebraic expressions) the basic functions performed by the processor or other system components. We'll then explain the connection between Boolean operators and logic gates, and between Boolean expressions and combinational logic circuits, also applying the definitions to exercises. Following this, some simple sequential circuits (with memory) will be illustrated, showing first the elementary components and then their combination to create registers or memories. Once the basic circuits are learned, we will develop some simplified examples of more involved circuits that implement the data path of a processor. These circuits will be capable of executing certain types of instructions (mainly arithmetic-logic) under the control of appropriate signals. This will lay the basis for introducing part of the RISC-V processor structure, which will be explored in depth in a subsequent course. Various types of memory will then be introduced and placed into different categories, each having distinct characteristics in terms of cost, speed, and size. The role of each memory type within a computer's architecture will be highlighted, also considering aspects related to performance.
Prerequisiti/Required background knowledge
Nessuno
None
Metodi didattici/Teaching methods
Gli argomenti trattati nel corso sono esposti prevalentemente tramite lezioni frontali. Durante le lezioni viene usato uno strumento (Wooclap) che permette di interagire con gli studenti tramite quiz anonimi e interattivi accessibili tramite smartphone. In questo modo è possibile stimolare la riflessione e rilevare eventuali criticità nel processo di apprendimento. Per ogni argomento trattato vengono proposti esercizi o quiz formativi. Vengono inoltre proposti incontri a piccoli gruppi alla presenza di un tutor, per svolgere e discutere esercizi (simili a quelli proposti nelle prove scritte).
The topics of the course are mainly presented through class lectures. During the lectures an interactive tool (Wooclap) is used to get a feedback from the students through anonymous quizzes that can be answered using the smartphone. This way the students are stimulated to reflect; moreover this activity allows an early detection of the possible critical aspects in the learning process. After presenting each topic the students are challenged with exercises and formative quizzes. Tutored meetings in small groups are proposed, to develop and discuss exercises (similar to those included in the written exam).
Altre informazioni/Further information
Sulla piattaforma DIR sono disponibili: la copia elettronica delle slide utilizzate a lezione, esempi di testi d’esame, quiz di autovalutazione, informazioni generali sul corso e avvisi relativi allo svolgimento del corso e sugli esami. Tramite un forum specifico sul DIR vengono pubblicate informazioni generali sul corso, avvisi relativi allo svolgimento del corso e informazioni riguardanti gli esami. Inoltre sono attivi forum dove gli studenti possono porre domande sugli argomenti del corso e sugli esercizi proposti, e rispondere a domande pubblicate da altri partecipanti. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti- disabili-e-dsa. Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell’insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
It is possible to download electronic copy of all slides of the lectures, perform self-assessment tests, read general information on the course and news about the lectures and the exam organization on the e-learning platform DIR . General information on the organization of the course and of the exams are published through a forum. Specific forums can be used by students to ask questions on course topics or exercises, or to provide answers posted by other students. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the teacher in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
L’esame di norma è scritto ma è possibile richiedere l’orale; inoltre una integrazione orale può essere proposta (dopo lo scritto) dalla docente quando sia necessario chiarire qualche punto oscuro dello scritto. Possono essere proposte prove in itinere (come supporto al superamento dell’esame finale) che possono anche assumere la forma di esercizi da svolgere in laboratorio. La prova comprende da quattro a sei domande che possono essere articolate in sottopunti e comprendono anche esercizi di applicazione delle nozioni apprese ad esempi concreti. La prova è superata se si raggiunge un punteggio di almeno il 60% dei punti totalizzabili sull’insieme di domande.
The examination consists of a written test, however it is possible to ask for an oral exam. Moreover an oral integration may be required (by the teacher) to clarify some unclear parts of the answers in the written test. Intermediate tests may be organized (as a facilitation to pass the exam right after the end of the course) that may be in the form of lab exercises. The test includes four to six questions each of which possibly structured into several points. The questions may also take the form of an exercise testing the ability to apply the learned concepts to practical examples. The threshold to pass the exam is the 60% of the global sum of points assigned to the questions.
Programma esteso/Content
Gli argomenti trattati nel corso sono principalmente tratti dal libro di testo (specifiche sezioni dei primi 4 capitoli e una appendice). Per alcuni argomenti sono forniti materiali aggiuntivi di aiuto allo studio. 1) Architettura degli elaboratori e principi di progettazione Tipi di calcolatori e loro caratteristiche. Principi di progettazione delle architetture degli elaboratori: Utilizzo delle astrazioni per semplificare il progetto; Rendere veloci le operazioni più frequenti; Migliorare le prestazioni tramite il parallelismo, la pipeline e la predizione; sfruttare la gerarchia delle memorie. Dai linguaggi di alto livello al linguaggio macchina. Principali componenti di un calcolatore e in particolare del processore. Influenza dello sviluppo tecnologico sulle caratteristiche dei calcolatori elettronici. Cenni sull’evoluzione storica dei calcolatori. La macchina di von Neumann e i calcolatori moderni. Definizione e misura degli indici di prestazione dei processori. [Rappresentazione digitale dei dati] Rappresentazione digitale dei dati: bit, byte e multipli. Rappresentazione di interi con e senza segno e operazioni aritmetiche sui numeri binari. Rappresentazione del testo: codici ASCII e Unicode. Numeri in virgola mobile: lo standard IEEE 754. 2) Circuiti logici e Implementazione di un processore Algebra di Boole: variabili booleane, funzioni booleane di più variabili, espressioni booleane e principali leggi dell’algebra booleana. Le porte logiche. Dalle espressioni booleane ai circuiti logici combinatori. Alcuni circuiti combinatori utili per realizzare una Unità Aritmetico Logica (ALU). Latch e Flip Flop: i circuiti sequenziali e le memorie. Uno schema semplice di implementazione di un primo processore ispirato al RISC-V. 3) La Gerarchia delle Memorie La gerarchia delle memorie: le memorie volatili (Registri, Cache, RAM) e non volatili (dischi magnetici e SSD, dischi ottici). Velocità, dimensioni e costo delle memorie.
The topics covered in the course are primarily selected from the textbook (specific sections of the first four chapters and one appendix). Additional study materials are provided for some topics. 1) Computer Architecture and Design Principles Types of computers and their characteristics. Design principles of computer architectures: Using abstractions to simplify the design; Making the most frequent operations fast; Improving performance through parallelism, pipelining, and prediction; Exploiting the memory hierarchy. From high-level languages to machine language. Main components of a computer, particularly the processor. Influence of technological development on the characteristics of electronic computers. Notes on the historical evolution of computers. The Von Neumann machine and modern computers. Definition and measurement of processor performance indices. [Digital Data Representation] Digital data representation: bit, byte, and multiples. Representation of signed and unsigned integers and arithmetic operations on binary numbers. Text representation: ASCII and Unicode codes. Floating-point numbers: The IEEE 754 standard. 2) Logic Circuits and Processor Implementation Boolean Algebra: Boolean variables, Boolean functions of multiple variables, Boolean expressions, and the main laws of Boolean algebra. Logic gates. From Boolean expressions to combinational logic circuits. Some useful combinational circuits for implementing an Arithmetic Logic Unit (ALU). Latch and Flip Flop: sequential circuits and memories. A simple implementation scheme for a first processor inspired by RISC-V. 3) Memory Hierarchy The memory hierarchy: volatile memories (Registers, Cache, RAM) and non-volatile memories (magnetic disks, SSDs, optical disks). Speed, capacity and cost of memories.
Risultati di apprendimento attesi/Intended learning objectives
Al termine del corso si sarà in grado di: Descrivere le caratteristiche dei principali tipi di calcolatori. Descrivere i principi ricorrenti nel progetto dei calcolatori: astrazioni; migliorare le prestazioni ottimizzando le situazioni più frequenti, sfruttando il parallelismo, eseguendo le operazioni in pipeline, anticipando le operazioni attraverso predizioni; impatto delle memorie nelle prestazioni di un calcolatore; come rendere più affidabili i sistemi attraverso la ridondanza. Comprendere le caratteristiche dei linguaggi di programmazione a diversi livelli e come avviene la traduzione da linguaggi di alto livello al linguaggio macchina (con interpreti e compilatori). Spiegare come l’evoluzione tecnologica ha influito su dimensione, costo e prestazioni dei calcolatori, determinando anche la diffusione capillare dei calcolatori. Definire come si possono misurare le prestazioni dei calcolatori. Elencare le principali tappe nella storia dei calcolatori, dalla metà del ‘900 ad oggi. Comprendere le basi della rappresentazione digitale dei dati (in particolare dei numeri interi con e senza segno, frazionari con virgola fissa o mobile, del testo secondo i principali standard). Definizione di bit, byte, e dei multipli (Kilo, Mega, Giga, Tera). Descrivere le caratteristiche della notazione posizionale per la rappresentazione dei numeri interi (senza segno), saper applicare la definizione con diverse basi (in particolare per le basi 10, 2, 8 e 16). Ricordare gli algoritmi di conversione dei numeri tra basi e saperli applicare. Definire la rappresentazione in modulo e segno e in complemento a due dei numeri interi con segno. Definire la rappresentazione dei numeri frazionari in virgola mobile secondo lo standard IEEE 754. Eseguire operazioni aritmetiche su numeri binari. Comprendere ed esemplificare le conseguenze della rappresentazione dei dati su un numero finito di bit: overflow e underflow. Descrivere gli standard ASCII (base ed esteso) e Unicode di codifica del testo, e i metodi di rappresentazione dei codepoint Unicode (UCS-2, UTF-8, UTF-16). Applicare le diverse codifiche a brevi testi in varie lingue eseguendo esercizi di codifica e di decodifica. Spiegare i metodi Little Endiand e Big Endian di memorizzazione di dati codificati su più byte. Definire l’Algebra di Boole: variabili, operatori, espressioni booleane, enunciare le principali leggi dell’algebra. Eseguire esercizi di semplificazione di espressioni booleane applicando tali leggi. Descrivere funzioni booleane di n variabili attraverso tavole di verità ed espressioni booleane; applicare i metodi di derivazione delle espressioni booleane in forma normale somma di prodotto o prodotto di somme dalla tavola di verità. Definire insiemi minimi di operatori necessari per descrivere una qualsiasi funzione booleana: dimostrare che ciascuno di tali insiemi minimi permettono di realizzare circuiti equivalenti a tutti gli altri operatori. Definizione delle porte logiche che realizzano gli operatori booleani. Saper ricavare da una espressione booleana il corrispondente circuito logico combinatorio e viceversa. Descrivere alcuni circuiti combinatori base per l’implementazione di CPU: multiplexer, decoder, sommatori, ALU. Descrivere i circuiti con memoria: latch, flip flop; spiegare il loro funzionamento (diretto da un clock) e descrivere come combinarli per ottenere registri o memorie. Descrivere come collegando circuiti combinatori base e impostando opportuni segnali di controllo in modo coordinato, si possa ottenere un primo prototipi di “cammino dei dati” (data path) capace di eseguire alcune istruzioni fondamentali appartenenti al linguaggio macchina. Descrivere i diversi livelli della “gerarchia delle memorie”, spiegando le caratteristiche dei diversi tipi di memorie (velocità, capacità, volatilità). Descrivere alcune tecnologie utilizzate per implementare memorie ai diversi livelli della gerarchia.
Taking part in this course will enable the participants to: Describe the characteristics of the main types of computers. Describe the underlying principles in computer design: abstractions; achieving better performance by optimizing frequent cases, exploiting parallelism, executing operations in a pipeline, anticipating operations through predictions; the impact of memories on computer performance; and how to make systems more reliable through redundancy. Understand the characteristics of programming languages at different levels and explain how to translate from high-level languages to machine language (through interpreters and compilers). Explain how technological evolution has influenced the size, cost, and performance of computers, also leading to their widespread diffusion. Define how computer performance can be measured. List the main stages in the history of computers, from the mid-20th century to today. Understand the basics of digital data representation (in particular, signed and unsigned integers, fixed- and floating-point fractions, and text according to main standards). Define bit, byte, and their multiples (Kilo, Mega, Giga, Tera). Describe the characteristics of positional notation for the representation of integers (unsigned), and be able to apply the definition with different bases (especially for bases 10, 2, 8, and 16). Recall and apply the algorithms for number conversion between bases. Define the sign-magnitude and two's complement representations for signed integers. Define the representation of fractional numbers in floating-point according to the IEEE 754 standard. Perform arithmetic operations on binary numbers. Understand and exemplify the consequences of data representation on a finite number of bits: overflow and underflow. Describe the ASCII (base and extended) and Unicode standards for text encoding, and the methods for representing Unicode codepoints (UCS-2, UTF-8, UTF-16). Apply the different encodings to short texts in various languages by performing encoding and decoding exercises. Explain the two methods for storing multi-byte encoded data: Little Endian and Big Endian. Define Boolean Algebra: variables, operators, Boolean expressions, and state the main the laws of algebra. Perform simplification exercises to Boolean expressions by applying these laws. Describe Boolean functions of n variables through truth tables and Boolean expressions; apply methods for deriving Boolean expressions in Sum-of-Products or Product-of-Sums canonical form from the truth table. Define minimal sets of operators necessary to describe any Boolean function; demonstrate that each of these minimal sets allows for the creation of circuits equivalent to all other operators. Define the logic gates that implement Boolean operators. Derive the combinational logic circuit implementing a Boolean expression and vice versa. Describe some basic combinational circuits for CPU implementation: multiplexer, decoder, adders, ALU (Arithmetic Logic Unit). Describe circuits with memory: latch, flip-flop; explain their operation (driven by a clock) and describe how to combine them to obtain registers or memories. Describe how, by connecting basic combinational circuits and setting appropriate control signals in a coordinated manner, a first prototype of a "data path" capable of executing some fundamental instructions belonging to machine language can be obtained. Describe the different levels of the "memory hierarchy," explaining the characteristics of the different types of memory (speed, capacity, volatility). Describe some technologies used to implement memories at different levels of the hierarchy.
×
Stampa
Insegnamento
ARCHITETTURA DEGLI ELABORATORI 2
Codice
MF0790
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
LAI MIRKO
Docenti
CFU
6.0
Ore di lezione
48.0
Ore di studio individuale
102.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
A
Anno
1
Periodo
Secondo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Approfondimento dell’architettura di un moderno sistema di elaborazione attraverso lo studio dell’Instruction Set Architecture (ISA) RISC-V. Il corso analizza nel dettaglio il linguaggio macchina RISC-V, soffermandosi su tipi di istruzioni, formati, modalità di indirizzamento e chiamate a procedura. Successivamente, si introducono tecniche avanzate di ottimizzazione delle prestazioni dei processori, quali la predizione dei salti, l’esecuzione fuori ordine e l’esecuzione speculativa, con particolare attenzione alla loro integrazione nella pipeline. Infine, viene presentato il funzionamento delle memorie cache.
In-depth study of the architecture of a modern computing system through the analysis of the RISC-V Instruction Set Architecture (ISA). The course explores the RISC-V machine language in detail, focusing on instruction types, formats, addressing modes, and procedure calls. Subsequently, it introduces advanced performance optimization techniques in processors, including branch prediction, out-of-order execution, and speculative execution, with specific attention to their integration into the pipeline. Finally, the course presents cache memory.
Testi di riferimento/Textbooks
David A. Patterson, John L. Hennessy: Struttura e progetto dei calcolatori RISC-V, Seconda Edizione, Pearson, 2022.
David A. Patterson, John L. Hennessy: Computer Organization and Design – RISC-V Edition, Second Edition, Morgan Kaufmann / Elsevier, 2020.
Obiettivi formativi/Mission
Scopo del modulo è quello di acquisire conoscenze approfondite sul linguaggio macchina RISC-V, comprendendone struttura, tipi di istruzioni, modalità di indirizzamento e meccanismi per le chiamate a procedura. Un secondo obiettivo è l’analisi delle principali tecniche di ottimizzazione delle prestazioni nei processori, tra cui predizione dei salti, esecuzione speculativa ed esecuzione fuori ordine, inquadrate nel contesto dell’architettura a pipeline. Il modulo si propone, inoltre, di introdurre i meccanismi di funzionamento della cache.
The goal of this module is to acquire a solid understanding of the RISC-V machine language, including instruction types, formats, addressing modes, and procedure call mechanisms. A second objective is to analyze major processor performance optimization techniques, such as branch prediction, speculative execution, and out-of-order execution, in the context of pipeline architectures. The module also introduces cache memory.
Prerequisiti/Required background knowledge
Conoscenza dei concetti studiati nel primo modulo del corso.
Knowledge of the concepts studied in module 1.
Metodi didattici/Teaching methods
Gli argomenti trattati nel corso sono esposti prevalentemente tramite lezioni frontali. Alcuni concetti (come la codifica delle istruzioni RISC-V, le dipendenze nella pipeline) sono approfonditi tramite esercitazioni guidate. Durante il corso sono proposti esercizi da svolgere in autonomia per verificare il proprio livello di apprendimento e stimolare un approccio critico. Il corso è integrato da un tutoraggio in cui saranno sviluppate alcune esercitazioni di gruppo.
The topics covered in the course are mainly presented through lectures. Some concepts (e.g., instruction encoding in RISC-V, pipeline dependencies) are further explored through guided exercises. Throughout the course, exercises will be assigned for individual work to test learning progress and stimulate critical thinking. Group tutorials will complement the lectures with collaborative exercises.
Altre informazioni/Further information
Sulla piattaforma DIR sono disponibili: la copia elettronica delle slide utilizzate a lezione, esercizi di esempio su ISA RISC-V e pipeline, informazioni generali sul corso ed avvisi relativi allo svolgimento del corso e sugli esami. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati, rivolgendosi allo "Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti" e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa. Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
On the DIR platform are available: electronic copies of lecture slides, a selection of sample exam questions, RISC-V ISA and pipeline-related exercises, general information about the course, and announcements concerning the course and examinations. Students with disabilities, Learning Disabilities (LD), or Special Educational Needs (SEN) may request specific services and tools by contacting the "Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti" and by consulting the dedicated page on the university website: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities. Once they have contacted the University Staff, students may also get in touch with the course instructor to define examination accommodations concerning academic matters.
Modalità di verifica dell'apprendimento/Assessment methods
La verifica dell’apprendimento è svolta in forma scritta. Il compito include un numero variabile di domande che possono essere strutturate in più punti. Le domande possono anche assumere la forma di esercizi per valutare la capacità di applicare ad esempi pratici i concetti teorici appresi nel corso. Ad ogni domanda è assegnato un voto massimo (in genere da 3 a 5). La valutazione tiene conto della correttezza della risposta e del livello di completezza. La sufficienza si ottiene se si dimostra di avere appreso e di sapere applicare gli elementi chiave indirizzati dalla domanda. Il voto complessivo per la valutazione dell’apprendimento degli argomenti di questo modulo è la somma dei voti ottenuti in ogni domanda.
The assessment is carried out through a written exam. The test includes some questions, each of which may be structured into multiple parts. The questions may also include exercises aimed at evaluating the ability to apply theoretical concepts to practical cases. Each question is assigned a maximum score (typically from 3 to 5 points). Evaluation takes into account both correctness and completeness. A passing grade is achieved by demonstrating understanding and correct application of the core concepts addressed in each question. The final grade is the sum of the scores obtained in all questions.
Programma esteso/Content
Studio dell’Instruction Set Architecture (ISA) RISC-V: tipi di istruzioni, formato delle istruzioni, modalità di indirizzamento, chiamate a procedura. Analisi delle tecniche di ottimizzazione delle prestazioni nei processori: predizione dei salti, esecuzione fuori ordine, esecuzione speculativa. Studio del funzionamento della pipeline in presenza di queste tecniche. Tipi di cache e meccanismi di funzionamento delle memoria cache.
Study of the RISC-V Instruction Set Architecture (ISA): instruction types, instruction formats, addressing modes, procedure calls. Analysis of processor performance optimization techniques: branch prediction, out-of-order execution, speculative execution. Study of how these techniques are integrated into the pipeline. Introduction to cache memory.
Risultati di apprendimento attesi/Intended learning objectives
Sapere descrivere le caratteristiche del linguaggio macchina RISC-V, con particolare attenzione a tipi e formato delle istruzioni e modalità d’indirizzamento. Sapere spiegare il funzionamento delle chiamate a procedura in RISC-V. Comprendere le principali tecniche di ottimizzazione dell’esecuzione (predizione dei salti, esecuzione fuori ordine, esecuzione speculativa), e il loro impatto sulla pipeline. Comprendere il funzionamento delle memoria cache.
Be able to describe the features of the RISC-V machine language, with a focus on instruction types, formats, and addressing modes. Be able to explain the mechanism of procedure calls in RISC-V. Understand the main execution optimization techniques (branch prediction, out-of-order execution, speculative execution) and their impact on pipeline performance. Understand how memory cache works.
×
Stampa
Insegnamento
PROGRAMMAZIONE 2
Codice
MF0795
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
PENNISI MARZIO ALFIO
CFU
6.0
Ore di lezione
48.0
Ore di studio individuale
102.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
A
Anno
1
Periodo
Secondo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Gestione di stutture dati dinamiche. Iterazione. Ricorsione. Algoritmi classici di ordinamento
Management of dynamic data structures. Iteration. Recursion. Classical sorting algorithms
Testi di riferimento/Textbooks
Paul Deitel, Harvey Deitel “Il linguaggio C. Fondamenti e tecniche di programmazione”. Pearson Italia, 2013 Brian W. Kernighan, Dennis M. Ritchie "Il linguaggio C. Principi di programmazione e manuale di riferimento" Pearson Italia
Paul Deitel, Harvey Deitel “Il linguaggio C. Fondamenti e tecniche di programmazione”. Pearson Italia, 2013 Brian W. Kernighan, Dennis M. Ritchie "Il linguaggio C. Principi di programmazione e manuale di riferimento" Pearson Italia
Obiettivi formativi/Mission
Al termine del corso, le studentesse e gli studenti devono essere in grado, dato un problema di programmazione (per gestire la struttua dinamica lista), di individuarne un algoritmo risolutivo sia iterazione sia in ricorsione, implementarlo in linguaggio C, eseguirlo al calcolatore. Conoscenza e comprensione: programmazione in iterazione, programmazione in ricorsione, la struttura dinamica lista. Capacità di applicare conoscenza e comprensione: dato un problema inerente alla struttura dinamica lista, - definire un algoritmo iterativo che trasforma i dati di input nei dati di output, seguendo i costrutti della programmazione; - definire un algoritmo ricorsivo che trasforma i dati di input nei dati di output, seguendo i costrutti della programmazione; - scrivere al calcolatore il programma sorgente che implementa l'algoritmo, utilizzando un linguaggio di programmazione (C); - compilare, eseguire e testare tale programma al calcolatore. Autonomia di giudizio: in modo autonomo le studentesse e gli studenti devono riuscire definire ed implementare un'algoritmo per risolvere un problema inerenti alla gestione di strutture dinamiche nel linguaggio di programmazione (C), a valutarne la complessità, e compilare ed eseguire il programma. Abilità comunicative: le studentesse e gli studenti devono riuscire a definire un algoritmo sia in iterazione sia in ricorsione, e deve sapere presentare il suo costo espresso come complessità in tempo e spazio. Capacità di apprendimento: le studentesse e gli studenti devono essere capaci di apprendere come si definiscae un algoritmo a partire dal problema sia in iterazione sia in ricorsione, valutarne i costi (complessità in tempo e spazio) e come si implementa tale algoritmo in C.
At the end of the course, students must be able, given a programming problem (to handle dynamic list structure), to identify a solving algorithm both iteratively and in recursion, implement it in C language, and execute it on the computer. Knowledge and understanding: programming in iteration, programming in recursion, the dynamic list structure. Ability to apply knowledge and understanding: given a dynamic list structure problem, - define an iterative algorithm that transforms input data into output data, following programming constructs; - define a recursive algorithm that transforms input data into output data, following programming constructs; - write the source programme implementing the algorithm to the computer, using a programming language (C); - compile, execute and test this programme on the computer. Autonomy of judgement: autonomously, the students must be able to define and implement an algorithm to solve a problem concerning the handling of dynamic structures in the programming language (C), to evaluate its complexity, and to compile and execute the program. Communication skills: students must be able to define an algorithm in both iteration and recursion, and must know how to present its cost expressed as complexity in time and space. Learning ability: students must be able to learn how to define an algorithm from the problem in both iteration and recursion, evaluate its cost (complexity in time and space) and how to implement such an algorithm in C.
Prerequisiti/Required background knowledge
Agli studenti e alle studentesse, è caldamente consigliato il superamento dell'esame di Programmazione 1
Students are strongly encouraged to pass the Programming 1 exam.
Metodi didattici/Teaching methods
Lezioni frontali, esercitazioni in aula e in laboratorio Circa metà delle lezioni sono in aula mentre le rimanenti le lezioni sono in laboratorio.
Lectures, classroom and laboratory exercises 1/2 of the lessons of the course are classroom lessons and 1/2 are in the laboratory.
Altre informazioni/Further information
L'attività in laboratorio richiede una partecipazione attiva e individuale delle studentesse e degli studenti, che in tal modo sviluppano abilità pratiche (le capacità di realizzare un programma). La partecipazione attiva permette una verifica del modo in cui gli argomenti vengono recepiti. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti- disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
The laboratory activity requires active and individual participation of the students, who thereby develop practical skills (the ability to carry out a programme). Active participation allows a check on how topics are received. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services- students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
Esame in laboratorio: sviluppo in laboratorio di funzioni iterative e ricorsive in linguaggio C. A discrezione del docente, l'esame può anche essere in forma di orale.
Laboratory examination: laboratory development of iterative and recursive functions in C language. At the discretion of the professor, the examination may also be in the form of an oral.
Programma esteso/Content
- puntatori in C e loro uso per la realizzazione di liste - funzioni interattive sulla liste: - gestione di una singola lista - gestione di più liste - ricorsione: - definizione e concetti di base - simulazione di funzione ricorsive mediante record di attivazione - un esempio complesso: le torri di Hanoi - funzioni ricorsive su liste: - gestione di una singola lista - gestione di più liste - funzioni ricorsive di ordinamento: - QuickSort - MergeSort
- pointers in C and their use for list-making - interactive functions on lists: - management of a single list - management of several lists - recursion: - definition and basic concepts - simulation of recursive functions using activation records - a complex example: the towers of Hanoi - recursive functions on lists - management of a single list - management of several lists - recursive sorting functions: - QuickSort - MergeSort
Risultati di apprendimento attesi/Intended learning objectives
Conoscenza della ricorsione, delle struct, degli algoritmi di ordinamento (ricorsivi/iterativi), del caricamento di liste e strutture dati da file, di analisi della complessità spazio/tempo su algoritmi su liste ricorsivi/iterativi
Knowledge of recursion, struct, sorting algorithms (recursive/iterative), loading lists and data structures from files, space/time complexity analysis on recursive/iterative list algorithms
×
Stampa
Insegnamento
INTRODUZIONE ALL'INTELLIGENZA ARTIFICIALE
Codice
MF0793
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
BOTTRIGHI Alessio
CFU
3.0
Ore di lezione
24.0
Ore di studio individuale
51.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
B
Anno
1
Periodo
Secondo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Il corso fornisce un'introduzione ai concetti fondamentali dell'intelligenza artificiale. Saranno trattati i principi di base, la storia, le principali tecniche e applicazioni con esempi semplici e casi di studio.
The course provides an introduction to the fundamental concepts of artificial intelligence. It covers the basic principles, history, illustrated through simple examples and case studies.
Testi di riferimento/Textbooks
Materiale didattico fornito dal docente
Teaching material provided by the lecturer
Obiettivi formativi/Mission
Conoscenza e capacità di comprensione: studenti e studentesse acquisiranno una conoscenza di base dei fondamenti teorici dell’Intelligenza Artificiale, con particolare attenzione ai principali paradigmi storici e alle metodologie classiche (ricerca, rappresentazione della conoscenza, ragionamento, apprendimento). Comprenderanno inoltre le tappe evolutive dell’IA, i suoi ambiti applicativi e le questioni etiche e sociali ad essa associate. Capacità di applicare conoscenza e comprensione: studenti e studentesse saranno in grado di riconoscere e descrivere scenari in cui sono impiegate tecnologie di Intelligenza Artificiale. Sapranno valutare il ruolo dell’IA in contesti interdisciplinari. Autonomia di giudizio: studenti e studentesse svilupperanno capacità critiche nell’analisi delle applicazioni dell’IA. La conoscenza dei fondamenti storici e dei dibattiti contemporanei fornirà loro gli strumenti per elaborare un proprio punto di vista motivato. Abilità comunicative: studenti e studentesse saranno in grado di esporre in modo chiaro e coerente i concetti fondamentali dell’Intelligenza Artificiale, utilizzando una terminologia corretta e accessibile, anche in contesti non specialistici. Capacità di apprendimento: studenti e studentesse avranno appreso conoscenze in merito ai fondamenti dell’IA e con particolare attenzione alle criticità che hanno guidato la sua evoluzione e sviluppo. In particolare, studenti e studentesse avranno appreso le peculiarità e le differenze delle differenti tecnologie di IA con particolare rilievo a potenzialità e limiti
Knowledge and understanding: Students will acquire a basic understanding of the theoretical foundations of Artificial Intelligence, with particular attention to the main historical paradigms and classical methodologies (search, knowledge representation, reasoning, learning). They will also understand the evolutionary stages of AI, its fields of application, and the associated ethical and social issues. Applying knowledge and understanding: Students will be able to recognize and describe scenarios in which Artificial Intelligence technologies are employed. They will be able to evaluate the role of AI in interdisciplinary contexts. Making judgments: Students will develop critical thinking skills in analyzing AI applications. Knowledge of the historical foundations and contemporary debates will provide them with the tools to develop their own, reasoned perspectives. Communication skills: Students will be able to clearly and coherently explain the fundamental concepts of Artificial Intelligence, using correct and accessible terminology, even in non-specialist contexts. Learning skills: Students will have acquired knowledge regarding the fundamentals of AI, with particular attention to the critical issues that have guided its evolution and development. In particular, they will have learned the specifics and differences of different AI technologies, with particular emphasis on their potential and limitations.
Prerequisiti/Required background knowledge
Nessuno
None
Metodi didattici/Teaching methods
Lezioni frontali in aula con supporto di slide. Il materiale didattico verrà fornito anche sulla piattaforma DIR.
Face-to-face lectures in the classroom supported by slides. Teaching materials will also be provided through the DIR platform.
Altre informazioni/Further information
Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
La valutazione si basa su una prova scritta con domande a risposta multipla e aperta, finalizzata a verificare la comprensione dei concetti di base.
Assessment is based on a written test with multiple-choice and open-ended questions, aimed at verifying understanding of basic concepts.
Programma esteso/Content
• Introduzione all’IA: definizioni, storia ed evoluzione • Rappresentazione della conoscenza e ragionamento automatico • Fondamenti di machine learning supervisionato e non supervisionato • Introduzione al deep learning • Elaborazione del linguaggio naturale • Visione artificiale • Applicazioni scientifiche e industriali dell’IA • Questioni etiche e sociali legate all’IA
• Introduction to AI: definitions, history and evolution • Knowledge representation and automated reasoning • Fundamentals of supervised and unsupervised machine learning • Introduction to deep learning • Natural language processing • Computer vision • Scientific and industrial applications of AI • Ethical and social issues related to AI
Risultati di apprendimento attesi/Intended learning objectives
Al termine del corso lo studente sarà in grado di: *) Descrivere l’evoluzione storica dell’IA. *) Distinguere tra i principali approcci *) Comprendere i problemi classici dell’IA *) Analizzare le applicazioni attuali dell’IA e le principali problematiche etiche connesse all'IA.
Upon completion of the course, students will be able to: *) Describe the historical evolution of AI. *) Distinguish between the main approaches. *) Understand the classic problems of AI. *) Analyze current applications of AI and the main ethical issues related to AI.
×
Stampa
Insegnamento
CONOSCENZE INIZIALI
Codice
MF0435
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
MARTIGNONE Francesca
CFU
0.0
Ore di lezione
24.0
Ore di studio individuale
0.0
Settore Scientifico Disciplinare (SSD)
NN -
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
D
Anno
1
Periodo
Primo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
G
Lingua insegnamento/Teaching language
Italiano
Italian
Contenuti/Content Summary
Il corso ha lo scopo di sviluppare competenze di base e capacità relative alla comprensione dei testi scientifici, incluse le rappresentazioni e le notazioni della matematica, tenuto conto dei programmi delle Indicazioni Nazionali e Linee Guida per della scuola secondaria di secondo grado.
The course aims at developing basic competencies and skills related to the comprehension of scientific texts, including mathematical representations and notations, taking into account the National Guidelines for secondary school.
Testi di riferimento/Textbooks
Materiale didattico messo a disposizione dal docente sulla piattaforma DIR del corso.
Didactic material provided by the teacher on the DIR platform of the course
Obiettivi formativi/Mission
Saper interpretare testi scientifici e, in particolare, saper decodificare e manipolare scritture specifiche della matematica. Si vogliono sviluppare competenze relative all'interpretazione di testi di problemi matematici e all'applicazione delle strategie risolutive. Tutte le attività richiederanno una comunicazione efficace dei processi svolti e dei risultati ottenuti.
Being able to interpret scientific texts and, in particular, to be able to decode and manipulate specific mathematical notations. The goal is to develop competencies related to the interpretation of mathematical problem texts and to the implementation of solution strategies. All the activities will require effective communication of the processes carried out and of the results obtained.
Prerequisiti/Required background knowledge
Competenze relative al linguaggio e alla matematica richieste al termine della scuola secondaria di secondo grado.
Language and mathematical skills required at the end of secondary school.
Metodi didattici/Teaching methods
Lezioni in presenza e esercitazioni a distanza svolte anche attraverso l'uso della piattaforma Moodle dell’Università.
Lectures and training sessions carried out by means of the use of the University Moodle platform.
Altre informazioni/Further information
Controllo dell'apprendimento: attività supportate dall'utilizzo della piattaforma Moodle dell’Università. Queste attività hanno un obiettivo formativo: sono discusse e corrette insieme alle studentesse e agli studenti. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES possono inoltre contattare la/il docente titolare dell’insegnamento in relazione alla declinazione delle modalità di esame.
Learning monitoring: activities supported by the use of the Moodle platform of the University. These activities have a formative goal: they are discussed and corrected together with the students. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs can refer to the teacher in charge of the course to define the examination modalities.
Modalità di verifica dell'apprendimento/Assessment methods
Test finale in analogia con il test iniziale delle competenze. La prova consiste in 20 domande di comprensione e uso dei testi scientifici, incluse le rappresentazioni e le notazioni della matematica. Per superare la prova è necessario ottenere più del 50% dei punti.
Final test in analogy with the competence assessment initial test. The final test consists of 20 questions about the understanding of scientific texts, including representations and notations of mathematics. To get through the test it is necessary to get more than the 50% of the points.
Programma esteso/Content
Nel corso saranno trattati contenuti e affrontati problemi relativi a competenze di base che sono necessarie per affrontare i corsi del primo anno del DiSIT. Saranno analizzati testi scientifici che includono le rappresentazioni e le notazioni della matematica e saranno svolte di attività di problem solving. In particolare saranno oggetto di studio: 1)Alcune caratteristiche fondamentali dei testi scientifici. 2)Diverse rappresentazioni dei numeri e delle misure. 3) Proprietà delle notazioni algebriche. 4)Rappresentazioni grafiche di fenomeni
The course will deal with content and problems related to basic skills that are required to face the DiSIT first year courses. Scientific texts, that include mathematical representations and notations, will be analyzed and problem solving activities will be carried out. In particular they will be studied: 1) Some fundamental features of scientific texts. 2) Different representations of number and measures. 3) Algebraic notations proprieties. 4) Graphic representations of phenomena
Risultati di apprendimento attesi/Intended learning objectives
Conoscenza di alcuni concetti di base della matematica, in particolare: numeri reali e loro rappresentazioni e principali funzioni elementari. Capacità di applicare questi concetti nella risoluzione di semplici problemi e nell'interpretazione di grafici. Consapevolezza delle potenzialità e dei limiti dei concetti e dei metodi adottati.
Knowledge of some basic concepts of mathematics, in particular: real numbers and their representations and main elementary functions. Ability at applying these concepts in simple problem solving and in the interpretation of graphs. Awareness about potential and limits of the concepts and methods adopted.
×
Stampa
Insegnamento
INGLESE - LT INFORMATICA
Codice
MF0400
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INFORMATICA
Curriculum
CORSO GENERICO
Responsabile didattico
GUBIANI Gessica
Docenti
CFU
6.0
Ore di lezione
50.0
Ore di studio individuale
100.0
Settore Scientifico Disciplinare (SSD)
NN -
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
E
Anno
1
Periodo
Secondo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
G
Lingua insegnamento/Teaching language
INGLESE
English
Contenuti/Content Summary
La conoscenza della lingua inglese è una competenza essenziale per professionisti. Da qui l'esigenza di offrire un corso pratico e immediato con l'obiettivo di migliorare a sviluppare le abilità di comunicazione in lingua inglese (e.g., ascolto, parlata, lettura e scrittura). L'acquisizione di tali nuove competenze linguistiche consentirà alla componente studentesca, una volta inserita nel mondo del lavoro sia in Italia che all’estero, di comunicare efficacemente in lingua inglese parlata e scritta.
A strong command of the English language has become an essential skill for all professionals. For this reason, there is a need to offer a practical and easy-to-learn English course aimed at improving English communication skills (e.g., listening, speaking, reading and writing). The acquisition of these new language skills will enable students to communicate effectively in spoken and written English once they join the workforce in Italy or abroad.
Testi di riferimento/Textbooks
National Geographic Life Upper Intermediate Pack (Student's Book + Workbook + Ebook) By PAUL DUMMETT, John Hughes and Helen Stephenson. National Geographic Learning ISBN:9788853625168
National Geographic Life Upper Intermediate Pack (Student's Book + Workbook + Ebook) By PAUL DUMMETT, John Hughes and Helen Stephenson. National Geographic Learning ISBN:9788853625168
Obiettivi formativi/Mission
Gli scopi, gli obiettivi e le funzioni sono quelli raccomandati dal Quadro comune europeo di riferimento (CEFR) per il raggiungimento di un livello B2. Alla fine del corso, la componente studentesca sarà in grado di affrontare la maggior parte delle situazioni che potrebbero presentarsi durante un viaggio e/o per lavoro dove si parla la lingua inglese. Inoltre, saprà giustificare le proprie intenzioni o decisioni e migliorerà anche le sue capacità di pronuncia e ascolto. Il tutto sarà finalizzato all'acquisizione della conoscenza e comprensione della lingua inglese generale e alle capacità di applicare tale conoscenza in ambito lavorativo in modo indipendente.
The aims, objectives and functions are those recommended to attain a B2 competence level according to the Common European Framework of Reference (CEFR). At the end of the course, students will be able to manage most situations likely to arise while traveling and/or working where the English language is spoken. In addition, the student will be able to provide reasons and explanations for his/her plans or opinions. Students will also improve their pronunciation and listening comprehension skills. The overall goal of the course is to provide students with the tools to strengthen their knowledge and understanding of English and their ability to apply this knowledge independently in the work environment.
Prerequisiti/Required background knowledge
Si raccomanda l'acquisizione di un livello B1 (intermedio) attraverso l'English Placement Test e corsi di sostegno A2 e B1 disponibili sulla piattaforma Macmillan Education (veda altre informazioni). Certificazioni internazionali di lingua inglese sono accettate secondo i criteri della commissione linguistica del CLUPO.
The attainment of a B1 (intermediate) competence level is highly recommended and can be accomplished by taking the English Placement Test and supplemental A2 and B1 courses on the Macmillan Education platform which is available on the Macmillan Education platform. International English certifications are accepted according to the criteria established by the CLUPO Linguistic Commission.
Metodi didattici/Teaching methods
Lezioni frontali e esercitazioni.
Lectures and class activities.
Altre informazioni/Further information
Si consiglia a tutta la componente studentesca di sostenere l'English Placement Test informatizzato. Questa prova NON sostituisce l'esame d'Inglese, anche nel caso di chi abbia conseguito un livello > B2. L'obiettivo del test d'ingresso è quello di verificare il proprio livello di conoscenza della lingua inglese secondo i parametri internazionali CEFR. Nel caso in cui il livello sia pari ad A1 (elementare) o A2 (pre-intermedio), la componente studentesca è caldamente consigliata di frequentare i corsi di allineamento A1>A2 e A2>B1 offerti da UPO tramite la piattaforma Macmillan Education, che permetterà di acquisire le conoscenze linguistiche necessarie per seguire più agevolmente il corso di lingua inglese del piano di studio (B2 sovra-intermedio).
It is recommended that all students take the computerized English Placement Test. This placement test does NOT replace the English exam, even in the event that one has achieved a level > B2. The objective of the entry test is verification of the level of one's English proficiency according to the international CEFR parameters. It is highly recommended that students with an A1 (elementary) or A2 (pre-intermediate) level take the A1 to A2 and A2 to B1 supplementary courses on the Macmillan Education platform. This will allow them to acquire the linguistic skills necessary to better follow the English course in their degree plan (B2-upper-intermediate).
Modalità di verifica dell'apprendimento/Assessment methods
L’esame finale è volto a verificare le competenze linguistiche in lingua Inglese. L’esame consisterà di una prova scritta basata sulle competenze acquisito nel testo indicato in bibliografia e su tutto il materiale svolto in classe. Le domande verteranno sulla comprensione, grammatica, vocaboli e ascolto. L’esame sarà tarato su un livello B2 (sovra-intermedio) secondo i parametri CEFR. Il superamento dell'esame prevede l'idoneità.
The final exam will assess English language skills. The test will be based on the skills acquired using the textbook and material covered in class. The questions will focus on reading comprehension, use of English, and listening. The exam will be calibrated on a B2 level (upper-intermediate) according to CEFR parameters. Grades will be Pass/Fail.
Programma esteso/Content
a) Studio del testo National Geographic Life Upper Intermediate Pack (Student's Book + Workbook + Ebook) indicato in bibliografia. b) Studio di eventuali dispense e articoli forniti dalla docente. c) Studio della grammatica; sintassi; tecniche di comprensione della pronuncia e dell'ascolto; comprensione di testi scritti di livello B2.
a) Study the textbook National Geographic Life Upper Intermediate Pack (Student's Book + Workbook + Ebook) indicated. b) Study any handouts and articles provided by the professor. c) Study grammar, syntax, pronunciation, listening comprehension, reading, and comprehension of written texts commensurate with a B2 level.
Risultati di apprendimento attesi/Intended learning objectives
Con le nuove competenze linguistiche, la componente studentesca sarà in grado di esprimersi in lingua inglese in modo spontaneo e fluente nella comunicazione orale, e in modo chiaro e dettagliato nella comunicazione scritta. I risultati attesi di questo percorso formativo saranno l'aumento della conoscenza e comprensione della lingua inglese (livello B2 sovra-intermedio) e la capacità di applicare tali conoscenze in ambito lavorativo in modo indipendente.
With their new language skills, students will be able to express themselves easily and spontaneously in oral communication in English and in a clear and detailed manner in written communications. As a result of this course, students will strengthen their knowledge and understanding of English (B2 upper-intermediate level) and their ability to apply this knowledge independently in the workplace.
Stampa guida
Stampa
Anno Codice Insegnamento Docenti Settore Scientifico Disciplinare (SSD) Curriculum Sede CFU
1 MF0574 ANALISI MATEMATICA Ferrero Alberto MAT/05 Tutti ALESSANDRIA 6.0
1 MF0789 ARCHITETTURA DEGLI ELABORATORI 1 Franceschinis Giuliana Annamaria INF/01 Tutti ALESSANDRIA 6.0
1 MF0790 ARCHITETTURA DEGLI ELABORATORI 2 Lai Mirko INF/01 Tutti ALESSANDRIA 6.0
1 MF0435 CONOSCENZE INIZIALI Martignone Francesca NN Tutti ALESSANDRIA 0.0
1 MF0202 FISICA Sitta Mario FIS/01 Tutti ALESSANDRIA 6.0
1 MF0400 INGLESE - LT INFORMATICA Gubiani Gessica NN Tutti ALESSANDRIA 6.0
1 MF0793 INTRODUZIONE ALL'INTELLIGENZA ARTIFICIALE Bottrighi Alessio INF/01 Tutti ALESSANDRIA 3.0
1 S1366 MATEMATICA DISCRETA Aceto Lidia, Laguzzi Giorgio MAT/03, MAT/01 Tutti ALESSANDRIA 9.0
1 MF0163 PROGRAMMAZIONE 1 Terenziani Paolo, Striani Manuel INF/01 Tutti ALESSANDRIA 9.0
1 MF0795 PROGRAMMAZIONE 2 Pennisi Marzio Alfio INF/01 Tutti ALESSANDRIA 6.0
1 MF0395 TECNICHE DI COMUNICAZIONE E SCRITTURA Bussolino Claudia L-FIL-LET/12 Tutti ALESSANDRIA 3.0
Dati aggiornati al: 16/07/2026, 04:25