- Docente: Alessandro Bevilacqua
- Credits: 6
- SSD: ING-INF/05
- Language: Italian
- Teaching Mode: Traditional lectures
- Campus: Forli
- Corso: First cycle degree programme (L) in Aerospace Engineering (cod. 0945)
Course contents
Introduction to digital devices
Structure and behaviour. Analysis and synthesis. Analogic and digital signals. Switch networks. Combinational and sequential logic networks. The concept of computing machine and algorithmic computation.
Information processing
Positional numbering systems. Binary numbers. Counting in binary, decimal, octal, hexadecimal base. Operations between binary numbers. Base conversion. Conversion of decimal numbers into any number base and vice versa. Codes. Numbers coding and binary codes. Error detection codes. Information communication: transmission, control, synchronization. Information protection. Error correction codes. The parity bit. Hamming code.
Logic networks
Expressions, functions and logic diagrams. Variables, bits and binary configurations. Boolean functions. Truth tables. Functions of one or two variables. Logic gates. Logic operations. Expressions and functions. Expressions and logical diagrams. Boolean and switching algebra. Expressions of incomplete functions. Canonical form. Combinational logic applications: multiplexer, encoder, decoder, half adder, full adder.
Combinational and sequential logic networks
Minimum cost networks. Minimum expressions. Karnaugh Maps. Analysis and synthesis. PAL and PLA. Binary memories. Latch SR and CD. Flip flop D, T, JK. Registers and counters.
Computer architecture
Von Neumann model. Functional principles. Computer hardware abstract representation. Microprocessor systems. Bus. Memories and programmable networks. Memory devices. Read Only Memory. ROM and RAM structure. Two dimensional selection matrix. CPU access to data and instructions.
Programming
Structured programming. Assignment, variables and statements. Constructs for structured programming. The C language. Basic constructs. Data structures in C. Arrays and pointers. Functions and prototypes. Input/Output. Compiling C programs. Precompiler directives and macros. Object oriented language principles.
Readings/Bibliography
Duplicated lecture notes and material supplied by the
teacher.
Programming:
BOOK
B.W. Kernighan, D.M. Ritchie
C programming language
Pearson - Prentice Hall
ON LINE TUTORIAL
Brian Kernighan
Programming in C, a tutorial
http://www.lysator.liu.se/c/bwk-tutor.html
TUTORIAL ON LINE
Brian Kernighan
Programming in C, a tutorial
http://www.lysator.liu.se/c/bwk-tutor.html
Teaching methods
Classroom lessons where each topic will be treated jointly with significant case studies to highlight its meaningful applications. In order to make the students aware of the different topics, many homework exercises will be proposed and publicly corrected aftewards.
Assessment methods
The students will be evaluated through a classroom practice and oral examination.
Teaching tools
In the teaching material section all the slides shown in class are available for download.
Office hours
See the website of Alessandro Bevilacqua