Teacher
|
LIBERATI Franco
(syllabus)
Information Theory (fundamental notions). The communication system. Alphabets and representation of information in digital systems. Data compression.
Numeric Representation. Numbers and their representation. Numbers and their representation in electronic computers: the binary system. Naturals: representation and conversion techniques; representation intervals; addition operation. Integers: representation and conversion techniques ; representation intervals; addition, subtraction, and multiplication operations; overflow and overflow . Floating point number: IEEE 754 standard representation; addition and multiplication operations.
Electronic Computers. First-generation computers: the Von Neumann Machine model (Control Unit, Arithmetic Logic Unit, Central Memory, Physical and logical organization of data, Information retrieval, Cache Memory - meaning and utility, Input/Output Devices, Read and Write Protocol, Bus Interconnection). Second-generation computers (RISC Machines. MIPS computer architecture. Execution of an instruction in a clock cycle. Pipelining). Third-generation computers. Parallel systems (Types of parallelism. The concept of threads. Multicore-Multiprocessor Architecture). Motherboard.
Fundamentals of Programming. Designing and writing an algorithm. Böhm-Jacopini Theorem. Structured program. Flowchart: symbols and composition rules. Modeling languages. Program: variable, variable type, a set of logical arithmetic instructions, interaction with Input/Output devices; selection (IF), repetition (WHILE), iteration (FOR). From source code to executable code: high-level language, compiler, assembler, linker, and executable.
Operating System. Firmware. Operating system structures and services (Process Management, Central Memory Management, Auxiliary Memory Management, I/O system management, File Management, Protection Systems, Networks, Command Interpreter). Interruption. Interrupt handler, context switching, interrupt recognition with a vectored interrupt system, interrupt service handling. Process (definition, CPU and I/O device utilization times). Multiprogramming. Multi-user. Central Memory (Allocation and fragmentation problem). Pagination. Virtual memory. File System: files and folders. Resource allocation (contiguous, linked list, indexed).
Linux. Using bash and Linux commands.
R Language. Development environment (R-Studio). The notion of Object. Set of Instructions. Control structures (conditional, IF; Dual Selection, IF .. ELSE; nesting, Repetition, WHILE; Forced Repetition REPEAT...IF; iteration, FOR).
Functions. The notion of function. User-defined functions. Integrated functions.
R Data Structures. Vector; Matrix; Multi-dimensional array (Array); List; Factor; Data Frames.
R Packages.
File Management in R. Textual files (CSV, XML, JSON, XLSX) Binary files. Retrieving files remotely.
Graphs in R. Bar graphs (bar charts); Circular graphs (pie charts); Histogram; Box plot; Scatter plot.
Statistics with R. Probability distribution. Normal (or Gaussian) distribution. Binomial distribution.
Machine Learning with R. Machine Learning and R Language Linear regression. Multiple regression.
(reference books)
Virtual Box Macchina virtuale per installazione di Unix in un sistema operativo ospitante https://www.virtualbox.org/ Linux Ubuntu Sistema operativo https://www.linux.it/distro/
R Project Sito del progetto R: linguaggio di programmazione, download e manuale https://www.r-project.org/ Distribuzione R Download dell'ambiente R https://cran.mirror.garr.it/CRAN/ Documentazione R Documentazione per l'installazione e per il set di istruzioni del linguaggio R https://cran.r-project.org/manuals.html R-Studio Ambiente di sviluppo del linguaggio R https://posit.co/download/rstudio-desktop/
|