Teachings

Select Academic Year:     2017/2018 2018/2019 2019/2020 2020/2021 2021/2022 2022/2023
Professor
GIOVANNI PUGLISI (Tit.)
Period
First Semester 
Teaching style
Convenzionale 
Lingua Insegnamento
ITALIANO 



Informazioni aggiuntive

Course Curriculum CFU Length(h)
[60/61]  COMPUTER SCIENCE [61/00 - Ord. 2016]  PERCORSO COMUNE 6 48

Objectives

Knowledge and understanding: The course presents some fundamental principles of computing systems, focusing on information representation, digital logic, and basic architectural elements.

Ability to apply knowledge and understanding: the student will be able to solve simple exercises on combinatorial and sequential logic circuits.

Making judgements: the student will be able to analyze simple digital logic circuits.

Communication skills: the student will acquire technical communication skills related to the topics studied in the course (fundamental principles of computing systems, information representation, digital logic, and basic architectural elements).

Ability to learn independently: starting from the basic concepts provided in the course, the student will be able to deepen some aspects of computing systems.

Prerequisites

none

Contents

1) INTRODUCTION
- Computer Science: the study of algorithms
- Languages for programming algorithms
- Algorithms and computability: Turing machines
- Computing machines: basic concepts, levels of abstraction, history.

2) INFORMATION REPRESENTATION
- Analog and digital representation
- Number systems: decimal, octal, hexadecimal, and binary systems
- Converting between different number systems
- Binary arithmetic: addition, subtraction, multiplication, division
- Negative numbers: sign-magnitude, one’s complement and two’s complement representations, using complements in computing, overflow
- Fixed-point and floating-point numbers
- IEEE standard for floating-point numbers
- Floating-point arithmetic
- Alphanumeric data representation.

3) BOOLEAN ALGEBRA AND LOGIC CIRCUITS
- Boolean algebra and its applications (logic circuits, propositional logic, set theory)
- Logic circuits: basic definitions and properties, logic gates
- Minterms, Maxterms, and Canonical forms
- Minimization: Karnaugh Maps, algorithmic methods, indifference conditions
- Other logic operations: NAND, NOR, XOR, NXOR
- Combinational circuits: analysis and synthesis, commonly used combinational modules (decoder, encoder, multiplexer), arithmetic circuits (binary adder, ALU example)
- Sequential circuits: general model, synchronization, flip-flop, excitation functions of flip-flops, synthesis of sequential circuits, registers and counters.

4) BASIC ARCHITECTURAL ELEMENTS
- Elements and behavior of the Von Neumann machine
- Main memory organization
- Encoding of instructions
- CPU: components, organization, instruction execution steps, performance
- Different types of computer memory: memory classification, memory hierarchy
- Extensions of Von Neumann machine.

Teaching Methods

Frontal lectures and guided exercises (48 hours).
Homework assignments and exercises under the supervision of a tutor.

Verification of learning

Written examination with:

- open questions, multiple-choice questions related to the fundamental principles of computing systems, information representation, digital logic, and basic architectural elements.

- exercises on information representation and digital logic circuits.

"In itinere" tests.

Texts

- C. Bolchini, C. Brandolese, F. Salice, D. Sciuto, Reti logiche, Apogeo.
- J.G. Brookshear. Informatica. Una panoramica generale. Pearson, 2012.
- Lecture notes

More Information

Auxiliary learning materials: lecture slides and exercises with solutions.

Questionnaire and social

Share on:
Impostazioni cookie