04JCJLI, 04JCJJM, 04JCJLM, 04JCJLP, 04JCJLS, 04JCJLX, 04JCJLZ, 04JCJMA, 04JCJMB, 04JCJMC, 04JCJMH, 04JCJMK, 04JCJMO, 04JCJMQ, 04JCJNX, 04JCJOD, 04JCJPC, 04JCJPI, 04JCJPL

A.A. 2019/20

Course Language

Inglese

Course degree

1st degree and Bachelor-level of the Bologna process in Ingegneria Dell'Autoveicolo (Automotive Engineering) - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Meccanica (Mechanical Engineering) - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Informatica (Computer Engineering) - Torino

1st degree and Bachelor-level of the Bologna process in Electronic And Communications Engineering (Ingegneria Elettronica E Delle Comunicazioni) - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Dei Materiali - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Elettrica - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Aerospaziale - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Biomedica - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Chimica E Alimentare - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Civile - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Edile - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Energetica - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Per L'Ambiente E Il Territorio - Torino

1st degree and Bachelor-level of the Bologna process in Matematica Per L'Ingegneria - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Elettronica - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Fisica - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Del Cinema E Dei Mezzi Di Comunicazione - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Gestionale - Torino

1st degree and Bachelor-level of the Bologna process in Ingegneria Gestionale - Torino

Course structure

Teaching | Hours |
---|---|

Lezioni | 50 |

Esercitazioni in aula | 10 |

Esercitazioni in laboratorio | 20 |

Teachers

Teacher | Status | SSD | h.Les | h.Ex | h.Lab | h.Tut | Years teaching |
---|---|---|---|---|---|---|---|

Sanchez Sanchez Edgar Ernesto - Corso 2 | Professore Associato | ING-INF/05 | 45,5 | 10 | 0 | 0 | 11 |

Squillero Giovanni - Corso 1 | Professore Associato | ING-INF/05 | 45,5 | 10 | 0 | 0 | 11 |

Teaching assistant

Context

SSD | CFU | Activities | Area context |
---|---|---|---|

ING-INF/05 | 8 | A - Di base | Matematica, informatica e statistica |

2018/19

This course, mandatory for all the students, has a twofold objective: on one hand, to introduce to the student to the issues related to computer science from both the “cultural” and the technological perspective. On the other hand, the course aims at teaching the use of computer programming as a way to solve realistic problems.

This course, mandatory for all the students, has a twofold objective: on one hand, to introduce to the student to the issues related to computer science from both the “cultural” and the technological perspective. On the other hand, the course aims at teaching the use of computer programming as a way to solve realistic problems.

The student must acquire two fundamental types of knowledge; the solution of concrete problems through programs implemented using a programming language and to be executed on a computer; the understanding of the quantitative aspects of computer science such as performance, computational power, representation of information, computer architecture. These skills will be applied to the solution of practical problems.

The student must acquire two fundamental types of knowledge; the solution of concrete problems through programs implemented using a programming language and to be executed on a computer; the understanding of the quantitative aspects of computer science such as performance, computational power, representation of information, computer architecture. These skills will be applied to the solution of practical problems.

No special prerequisites are expected for the course. Some basic notions of Calculus (e.g., the concept of function) and a minimal level of familiarity with the interaction with a computer.

No special prerequisites are expected for the course. Some basic notions of Calculus (e.g., the concept of function) and a minimal level of familiarity with the interaction with a computer.

REPRESENTATIONS OF NUMERICAL DATA (4 HRS)
-Unsigned Numbers
-Representation intervals
-Operations with pure binary numbers: Addition, Subtraction, Overflow.
-Signed Numbers (sign and magnitude and two's complement representations)
-Real Numbers (Fixed and Floating Point)
- Representation error in computers
- Fixed and Floating point representations
REPRESENTATIONS OF NON-NUMERICAL DATA (2 HRS)
-Characters encoding (ASCII, UNICODE)
- Examples of representations of other non-numerical data
BOOLEAN ALGEBRA (2 HRS]
-AND, OR, NOT operators and Boolean expressions
- truth tables of a generic Boolean expression
COMPUTER ARCHITECTURE (6 HRS)
-Von Neumann model (Program Memory, Control Unit, Operating Unit)
-CPU (execution speed) and cache
-PC architecture (devices and buses)
-Hardware and programs: assembly languages vs. high level languages
SOFTWARE ARCHITECTURE [2 HRS]
- Types of programming languages: machine language, assembly, high-level languages
-Translating high-level languages into binary code: compilers
- The operating system
PROBLEM SOLVING AND ALGORITHMS (4 HRS)
-Flow charts, pseudo-code
-Problem solving and program writing
C LANGUAGE [40 HRS]
-Data types and symbolic constants.
-Input/output operations (printf and scanf).
-Control-Flow structures (iterative and conditional).
-Arrays and multidimensional arrays (of integers, reals and characters).
-Addresses and pointers
-Functions and calls (by reference, by value, pointers).
-Strings.
-Command line arguments (argc and argv).
-Files.
-Struct.
- concept of dynamic memory

REPRESENTATIONS OF NUMERICAL DATA (4 HRS)
-Unsigned Numbers
-Representation intervals
-Operations with pure binary numbers: Addition, Subtraction, Overflow.
-Signed Numbers (sign and magnitude and two's complement representations)
-Real Numbers (Fixed and Floating Point)
- Representation error in computers
- Fixed and Floating point representations
REPRESENTATIONS OF NON-NUMERICAL DATA (2 HRS)
-Characters encoding (ASCII, UNICODE)
- Examples of representations of other non-numerical data
BOOLEAN ALGEBRA (2 HRS]
-AND, OR, NOT operators and Boolean expressions
- truth tables of a generic Boolean expression
COMPUTER ARCHITECTURE (6 HRS)
-Von Neumann model (Program Memory, Control Unit, Operating Unit)
-CPU (execution speed) and cache
-PC architecture (devices and buses)
-Hardware and programs: assembly languages vs. high level languages
SOFTWARE ARCHITECTURE [2 HRS]
- Types of programming languages: machine language, assembly, high-level languages
-Translating high-level languages into binary code: compilers
- The operating system
PROBLEM SOLVING AND ALGORITHMS (4 HRS)
-Flow charts, pseudo-code
-Problem solving and program writing
C LANGUAGE [40 HRS]
-Data types and symbolic constants.
-Input/output operations (printf and scanf).
-Control-Flow structures (iterative and conditional).
-Arrays and multidimensional arrays (of integers, reals and characters).
-Addresses and pointers
-Functions and calls (by reference, by value, pointers).
-Strings.
-Command line arguments (argc and argv).
-Files.
-Struct.
- concept of dynamic memory

The course includes about 20 hours of lab, in which the topics coverd in the classes will be implemented as C programs.

The course includes about 20 hours of lab, in which the topics coverd in the classes will be implemented as C programs.

- Handouts of class material.
- H.M.Deitel e P.J.Deitel, "C: How to Program", 6th edition, Prentice-Hall titolare dell’insegnamento.
The textbooks, chosen among the ones listed above, will be announced in class by the instructor.

- Handouts of class material.
- H.M.Deitel e P.J.Deitel, "C: How to Program", 6th edition, Prentice-Hall titolare dell’insegnamento.
The textbooks, chosen among the ones listed above, will be announced in class by the instructor.

The exam consists of a written test that aims at assessing the students’ knowledge of the theoretical aspects of the course (through numerical exercises or open-answer questions) and the programming skills (through the writing on paper of a C program that implements the solution of a practical problem). The duration of the written test is 2 hours and it is a closed book test.
The maximum score for the written test is 30 cum laude.
The exam features also an oral discussion of the written test, during which the instructor may request to elaborate some of the topics treated in the course with the objective of assessing the student's skills.

© Politecnico di Torino

Corso Duca degli Abruzzi, 24 - 10129 Torino, ITALY

Corso Duca degli Abruzzi, 24 - 10129 Torino, ITALY