The teaching introduces the architecture of microprocessors and microcomputers, explaining its behavior by the usage of the Assembly Language. The teaching aims to emphasize the relations among the computer architecture, the microelectronics techniques and the base software organization. The practice lessons relate to the Assembly Language and the tuning of simple programs in a dedicated development environment.
Course Prerequisites
The topics of the course presupposes the knowledge of the concepts faced during the "fondamenti di informatica" course.
Teaching Methods
Lectures (hours/year in lecture theatre): 22.5 Practical class (hours/year in lecture theatre): 37.5 Practicals / Workshops (hours/year in lecture theatre): 0
Assessment Methods
The exam of the Computer Architecture module consists of a written test followed by a practical exercise based on assembly programming, validation and debugging.
Texts
Patterson D.A., Hennessy J.L. Computer organization and design. Morgan Kaufmann Publishers, 2021, VI edition.
Contents
Computer Architecture Module: Architecture of a processor Functional blocks: memory, arithmetic unit, input and output units, control unit. Unit interconnection: bus. Interruption. Hardware e software. Functional blocks flow chart for a processor. Instruction flow and data flow. Information representation, relative numbers, conversion between representations, real numbers. Aritmetic unit, Ripple Carry adder and Carry Look Ahead adder.
Assembly language Addressing techniques and Assembly instructions. Interrupts management. Assembler, linker-loader, developmente environment and simulator. Examples.